Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Interbase db replikation...

Frage Entwicklung Datenbanken

Mitglied: dax4fun

dax4fun (Level 1) - Jetzt verbinden

29.08.2014, aktualisiert 16:24 Uhr, 1102 Aufrufe

Hi, Leute

brauche eure Hilfe, habe als Aufgabe eine Interbase6 Table bekommen, wo ich wenn eine neue Zeile dazukommt, die ganze Zeile in eine andere DB replizieren soll, die identisch aufgebaut ist.

Dieser neuer Eintrag (Zeile), kommt alle 5 min als fortlaufender event und datums Eintrag, weitere 20+ Einträge sind noch mit an Board (EVENT täglich von 2 bis 288 am nächsten Tag wieder 2-288 )

01.
GRTIME                   GRNUMBER          GRRACENUMBERIX     GRFIRST    GRSECOND    GRODD_001  
02.
25.08.2014 00:05:00               2         749481002          4           5        1502 
03.
25.08.2014 00:10:00               3         749481003          5           1        1302
habe mir gedacht das per "stored procedure " zu machen (da wenn event da schnell replizieren!! ) habe eine solche gefunden die vorhanden war, davon will ich eine txt Datei und per isql in die andere db rein

01.
# vorhandene procedure 
02.
 
03.
CONNECT 'D:\ESDS\Database\CONTROLDESK.IB' USER 'SYSDBA' PASSWORD 'masterkey'; 
04.
/* 
05.
 * Exceptions. 
06.
 */  
07.
CREATE EXCEPTION FAILED_TO_CREATE_FILE 'File could not be created.'; 
08.
CREATE EXCEPTION FAILED_TO_WRITE_FILE 'File could not be written.'; 
09.
 
10.
 
11.
/* 
12.
 * Procedure to write file: <TICKETNUMBER>.txt 
13.
 */  
14.
SET TERM ^ ; 
15.
CREATE PROCEDURE WRITE_TICKET_FILE (ticketNumber CHAR(40), ticketAmount INTEGER, isCancel INTEGER) 
16.
AS 
17.
  DECLARE VARIABLE printerSerialNumber VARCHAR(32); 
18.
  DECLARE VARIABLE path VARCHAR(128); 
19.
  DECLARE VARIABLE filename VARCHAR(256); 
20.
  DECLARE VARIABLE filehandle INTEGER; 
21.
  DECLARE VARIABLE retwrite INTEGER; 
22.
  DECLARE VARIABLE retclose INTEGER; 
23.
  DECLARE VARIABLE newline VARCHAR(4); 
24.
  DECLARE VARIABLE content VARCHAR(4096); 
25.
  DECLARE VARIABLE contentAmountFloat FLOAT; 
26.
  DECLARE VARIABLE contentAmountStr VARCHAR(32); 
27.
  DECLARE VARIABLE contentStatus VARCHAR(8); 
28.
  DECLARE VARIABLE contentLength INTEGER; 
29.
BEGIN 
30.
 
31.
  /* 
32.
   * Configure following PARAMETERs: 
33.
   */    
34.
  printerSerialNumber = '1234567890123456'; 
35.
  path = 'C:\\TICKETS\\'; 
36.
   
37.
  /* 
38.
   * From here no further changes needed 
39.
   */    
40.
  newline = CHR(10); 
41.
   
42.
  filename = path || ticketNumber || '.txt'; 
43.
 
44.
  filehandle = FOPEN(filename, BITOR(FO_CREAT(), FO_RDWR()));   
45.
  IF (filehandle >= 0) THEN 
46.
    BEGIN 
47.
       
48.
      contentStatus = ''; 
49.
      IF (isCancel = 1) THEN 
50.
        BEGIN 
51.
          contentStatus = '1;1;'; 
52.
        END 
53.
       
54.
      contentAmountFloat = ticketAmount; 
55.
      contentAmountStr = contentAmountFloat / 100; 
56.
      contentAmountStr = TRIM(contentAmountStr); 
57.
      contentAmountStr = SUBSTR(contentAmountStr, 1, STRPOS('.',contentAmountStr)+2); 
58.
       
59.
      content = '350,1,______,_,__;+6 Broj listica:;' || newline || 
60.
                '350,1,______,_,__;+7 ' || SUBSTR(ticketNumber, 0, 21) || ';' || newline || 
61.
                '350,1,______,_,__;+8 ' || SUBSTR(ticketNumber, 21, 21) || ';' || newline || 
62.
                '48,1,______,_,__;' || printerSerialNumber || ';1;0000;' || contentStatus || newline || 
63.
                '52,1,______,_,__;1;' || contentAmountStr || ';0.00;' || newline || 
64.
                '53,1,______,_,__;' || newline || 
65.
                '56,1,______,_,__;' || newline; 
66.
       
67.
      contentLength = STRLEN(content); 
68.
       
69.
      retwrite = FWRITE(filehandle, content); 
70.
      IF (retwrite <> contentLength) THEN 
71.
        BEGIN 
72.
          retclose = FCLOSE(filehandle); 
73.
          EXCEPTION FAILED_TO_WRITE_FILE; 
74.
        END 
75.
       
76.
      retclose = FCLOSE(filehandle); 
77.
    END 
78.
  ELSE 
79.
    BEGIN 
80.
      EXCEPTION FAILED_TO_CREATE_FILE; 
81.
    END 
82.
     
83.
END 
84.
85.
SET TERM ; ^
01.
# meine Interpretation ;) 
02.
/* 
03.
 * Exceptions. 
04.
 */  
05.
CREATE EXCEPTION FAILED_TO_CREATERESULT_FILE 'File could not be created.'; 
06.
CREATE EXCEPTION FAILED_TO_WRITERESULT_FILE 'File could not be written.'; 
07.
 
08.
 
09.
/* 
10.
 * Procedure to write file: <TICKETNUMBER>.txt 
11.
 */  
12.
SET TERM ^ ; 
13.
CREATE PROCEDURE WRITE_RESULT_FILE (ticketNumber CHAR(40), ticketAmount VARCHAR(4096)) 
14.
AS 
15.
   
16.
  DECLARE VARIABLE path VARCHAR(128); 
17.
  DECLARE VARIABLE filename VARCHAR(256); 
18.
BEGIN 
19.
  path = 'C:\\RESULTS\\'; 
20.
  filename = path || ticketNumber || ticketAmount || '.txt'; 
21.
  FOPEN(filename); 
22.
  FWRITE(filename); 
23.
FCLOSE(filename); 
24.
END 
25.
26.
SET TERM ; ^
Ähnliche Inhalte
Microsoft Office
Automatischer Datenimport aus csv Datei in Access DB - Wo zu ändern? (2)

Frage von Mejestic12 zum Thema Microsoft Office ...

Datenbanken
ORACLE DB Abfrage (5)

Frage von Marabunta zum Thema Datenbanken ...

E-Mail
Mail-Replikation mit Dovecots dsync (1)

Frage von it-fraggle zum Thema E-Mail ...

Datenbanken
Backup restore SQL Express DB (7)

Frage von franksig zum Thema Datenbanken ...

Neue Wissensbeiträge
Rechtliche Fragen

Heiseshow, live ab 12 Uhr: Steht die Vorratsdatenspeicherung vor dem Aus?

Tipp von sabines zum Thema Rechtliche Fragen ...

Outlook & Mail

Outlook Probleme nach Juni Updates - KB3203467 ist Schuld

(1)

Information von Deepsys zum Thema Outlook & Mail ...

Microsoft Office

Windows 7, Office 2016 RTM und Updates ohne WSUS

Tipp von chgorges zum Thema Microsoft Office ...

E-Mail

Thunderbird 52 hat Druckprobleme

(3)

Tipp von magicteddy zum Thema E-Mail ...

Heiß diskutierte Inhalte
Server-Hardware
Einem Stromausfall entgegen wirken (22)

Frage von OIOOIOOIOIIOOOIIOIIOIOOO zum Thema Server-Hardware ...

Festplatten, SSD, Raid
PC stellt nach dem Bios ab (20)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...

Windows 7
Freeware MSI Tool (13)

Frage von uridium69 zum Thema Windows 7 ...

DSL, VDSL
gelöst Ständige Störungen - Internet (12)

Frage von gamerff zum Thema DSL, VDSL ...