Heart-Profit ERP
September 29, 2024, 07:29:12 pm *
Welcome, Guest. Please login or register.

Login with username, password and session length
News:
 
   Home   Help Login Register  
Pages: [1]
  Print  
Author Topic: Vereenvoudigen procedure Aan-/Uitzetten transakties per bedrijf  (Read 810 times)
0 Members and 2 Guests are viewing this topic.
Heart Informatisering B.V.
Partner
******
Offline Offline

Posts: 27468


View Profile WWW
« on: November 03, 2014, 11:39:50 am »

Zodra de module Profit-Transact geïmplementeerd is, kunnen tabellen "transaktioneel" worden gemaakt. Profit herkent dan dat data in een tabel gewijzigd is, en kan deze data vervolgens repliceren naar een SQL database, zodat we elders een SQL database hebben met dezelfde data zoals in de Profit-database.

Het repliceren van data naar een SQL server kan aan de orde zijn omdat we bijv. een webshop die lopende orders wil kunnen weergeven, en die met SQL queries uit deze SQL database worden gelezen.

Aangezien het niet altijd nodig is om de data uit alle bedrijven te repliceren naar de SQL server, is er een mogelijkheid om het genereren van Transakties per bedrijf Aan- of Uit te zetten.

V.w.b. dit "Aan-/Uitzetten" heeft ooit iemand bedacht dat dit "in de tijd" moet kunnen gebeuren. Dat idee is leuk, maar in praktijk toch weinig zinvol.

Een korte uitleg:

Om data uit een tabel te kunnen repliceren naar een SQL database zal

a. Het Transaktiemechanisme AAN moeten staan in het bedrijf

b. De tabel Transaktioneel moeten zijn gemaakt.

Dus stel, we kunnen in ons bedrijf het Transaktiemechanisme aan hebben staan, maar als we tabel LOVO (Verkooporders) niet Transaktioneel hebben gemaakt, zullen we nooit transakties krijgen voor die tabel.

Als we de tabel LOVO transaktioneel maken, moet deze tabel op dat moment opnieuw naar de SQL server worden geupload, immers, we kunnen daarna weliswaar de transakties (wijzigingen) doorsturen naar de SQL database, maar als de initiële tabel daar niet staat, hebben we niets aan de wijzigingen; dus konkreet: stel dat we de leverdatum van een verkooporder wijzigen, en deze wijziging aanbieden aan de SQL server, heeft dat weinig zin als de hele verkooporder zelf nog niet bekend is in de SQL server.

Ervanuitgaande dat we dat begrijpen, kunnen we ons vervolgens afvragen van de zin-/onzin is van het aktiveren danwel deaktiveren van transakties per een bepaald tijdstip.

In de oude versie konden we opgeven "Aktiveer in bedrijf X het transaktiemechanisme maar op maandagmiddag om 14:00". Ah... en dan ? In het weekend hebben we tabel LOVO transaktioneel gemmaakt, en deze tabel geupload naar de SQL server, de hele maandagmorgen hebben we honderden orders aangemaakt die niet naar de SQL hoefden te worden doorgekopieerd (want het bedrijf was niet transaktioneel), maar voor iedereen die ná maandagmiddag om 14:00 inlogt, moet dat ineens aktief worden ?

Onzin. De gebruikers die maandagmorgen al mutaties gemaakt hebben, zullen er al voor gezorgd hebben dat de LOVO versie in de SQL database niet meer synchroon loopt met de versie in Profit, en dus heeft het totaal geen zin om pas ná maandag middag 14:00 wel transakties aan te gaan maken.

Nog een stapje verder... Het al dan niet transaktioneel zijn van een bedrijf werd bepaalt "tijdens aktiveren van een bedrijf". Ofwel, als iemand om 13:59 Profit opstartte, en dit ná 14:00 niet nogmaals deed, gold voor die gebruiker dat het bedrijf alsnog niet transaktioneel was!

Nu andersom. Als we op enig moment konstateren dat we in e.o.a. testbedrijfje teveel transakties genereren terwijl we die niet eens nodig hebben op de SQL server, en we schakelen het mechanisme uit voor dat bedrijf, dan kunnen we dat net zo goed "direkt" doen. We kiezen er immers voor om onze transakties niet meer door te sturen naar de SQL server, waarom daarmee wachten tot maandagmiddag 14:00 ?

Er zou hooguit een situatie kunnen worden verzonnen waarbij we bijv. zouden zeggen dat we tot maximaal 31-12 om 23:59 transakties willen verwerken, en daarna niet meer, om in de SQL een tabel met de stand per 31/12 te krijgen, maar... zo werkte het niet.

In praktijk zal het eropneer komen dat zodra we willen dat we de data uit een bepaald bedrijf willen repliceren naar de SQL server, we er eerst voor moeten hebben gezorgd dat alle tabellen met data uit dat bedrijf opnieuw worden geupload naar de SQL server. Dit zijn akties die een Systeembeheerder moet uitvoeren op het moment dat er geen gebruikers in het systeem zitten. Zodra Profit daarna weer is vrijgegeven voor gebruik, zullen de nieuwe Transaktiedefinities meteen aktief moeten worden! om de data 1:1 naar de SQL database te kunnen repliceren.

FunktieOmschrijvingDtm.Vl.WyzDtm.L.Wyz
LOINBE      Initialiseren Bedrijf    27-10-2014    03-11-2014
LOINTV      Omschrijving (nog) niet bekend    02-04-2012    03-11-2014
SYSSTB      Omschrijving (nog) niet bekend    18-03-2011    03-11-2014
SYUTTRAU    Transakt.verwerking Aan/Uit    10-04-2012    03-11-2014
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.05 seconds with 19 queries.