Heart-Profit ERP
November 27, 2024, 02:54:27 pm *
Welcome, Guest. Please login or register.

Login with username, password and session length
News:
 
   Home   Help Login Register  
Pages: [1]
  Print  
Author Topic: Case Sensitive Collation voor export tabellen naar Extendis  (Read 495 times)
0 Members and 1 Guest are viewing this topic.
Heart Informatisering B.V.
Partner
******
Offline Offline

Posts: 27476


View Profile WWW
« on: February 25, 2021, 06:20:03 pm »

Binnen Profit zijn er verschillende manieren om data uit te wisselen richting Extendis, opdat zij Order- en Kostenfakturen aan Profit beschikbaar kunnen stellen in hun Views VW_ProfitInlezenOrders en VW_ProfitInlezenKosten.

In Extendis zullen een aantal gegevens uit Profit bekend moeten zijn; denk hierbij aan Grootboekrekeningen, BTW Kategoriën en nog niet gefaktureerde Goederen Ontvangsten. Een van de methoden om die data met Extendis uit te wisselen, is door deze Data in een reeks Profit_  tabelen beschikbaar te stellen. Zo worden Grootboekrekeningen opgenomen in een tabel Profit_ADGR.

Tot aan deze Releasenote was de Collation van dit soort tabellen gelijk aan de Collation van de Database; dit betrof een CaseInsensitive Collation. Voor 'sleutelvelden' is een Case-Insensitive Collation niet wenselijk, bij de gratie dat dit veld in Profit een Case-Sensitive veld betreft. M.i.v. deze Releasenote geldt dat alle Character velden uit deze Profit_ tabellen als Case-Sensitive beschikbaar worden gesteld.

Deze aanpassing geldt overigens alleen voor de situatie waarin rubriek "Rechtstreeks in SQL J/N" met de waarde "Ja" is gevuld.

Wat is nu eigenlijk precies het probleem?

Laten we dit uitleggen aan de hand van een voorbeeld. In Profit hebben we Grootboekrekeningen, Kostenplaatsen en Kostensoorten. Deze rekeningnummers staan allemaal in tabel ADGR (Grootboekrekeningen) en worden daar uniek gemaakt middels het Rekeningschema.

Het Rekeningschema bestaat uit twee letters. Een Grootboekrekening wordt in ADGR opgeslagen met een Rekeningschema bestaande uit twee Hoofdletters; een Kostenplaats doet dit met twee kleine letters (en een Kostensoort met een kombinatie van hoofd-/kleine letters).

Stel dat we een Grootboekrekening 1200 hebben, maar we hebben ook een Kostenplaats 1200, dan hebben we 2 records in ADGR waarbij één record onder ADRS_IDE = "LO" staat en het andere record onder ADRS_IDE = "lo".

Bij een Case-Insensitive collation zullen we nooit in staat zijn om enkel de records op te vragen die in Hoofdletters staan, immers, het "Case-Insensitive" zorgt ervoor dat we ook de versie in kleine letters krijgen. Derhalve moéten de Character velden in deze tabellen een Case-Sensitive Collation krijgen.

Merk op dat dit slechts één voorbeeld is en dat er veel meer toepassingen zijn die fout kunnen lopen door geen hoofd-/kleine letters te respekteren; denk bijv. aan het feit dat het in Profit mogelijk is om kleine letters toe te staan in het Artikelnummer, of in Chargenummers.

FunktieOmschrijvingDtm.Vl.WyzDtm.L.Wyz
LOEXSQGN    Omschrijving (nog) niet bekend    25-02-2021    25-02-2021
Logged
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1 RC2 | SMF © 2001-2005, Lewis Media Valid XHTML 1.0! Valid CSS!
Page created in 0.059 seconds with 19 queries.