Issues trying to complete an online order at MyCommerce/Digital River

Firstly: try placing your order again using a different browser, as this often solves any issues with regard to online payment. If this doesn't help please contact MyCommerce/Digital River directly [Link  Contact MyCommerce Share-It ]


IBExpert & Firebird Prepaid Hotline

(German-language version below)

Telephone and/or remote support billed by the minute

Languages spoken: English and German. Including remote support using pcvisit. All questions regarding Firebird, Delphi®, IBExpert and Lazarus are welcome.

We will schedule a support appointment as soon as possible after receiving your support request and validating your credit. Should you require our support, billing will be in accordance with our general conditions, as described here:

Standard Hotline: Monday - Friday 08:00 -18:00 (CET):
Hotline customer account: - 1 minute for each minute used*
135 €/hour
Hotline Express: Monday - Sunday 08:00 - 22:00 (CET):
Hotline customer account: - 2 minutes per minute used*
270 €/hour
Hotline Express Emergency: Monday - Sunday after 22:00 (CET):
Hotline customer account: - 3 minutes per minute used*
405 €/hour

* We recommend setting up a prepaid hotline customer account with a sufficient credit balance (e.g. 960 minutes) so that we can help you quickly and unbureaucratically in an emergency and you save time and money. Your hotline credit does not expire and can be used as required.
Your hotline customer account will be debited with the exact number of minutes used during a remote or telephone session.

You can find our price list here.

And this is how it works: After activating your hotline customer account in the IBExpert Download Center, you can view your prepaid code, your available hotline minutes and a list of your hotline sessions with start and end times under Hotline Information. You will be connected directly to your contact person via your hotline telephone number, which you will receive by e-mail (no call center!). You should quote the prepaid code when you call.

Our IBExpert and Firebird hotline is available worldwide.

You can find a summary of all IBExpert services and fees under All products & prices. If you have any further questions please mail sales@ibexpert.biz




IBExpert und Firebird Prepaid Hotline

Support per Telefon und/oder Remote mit minutengenauer Abrechnung

Sprachen: Englisch und Deutsch. Inklusive Remote-Support mit pcvisit. Alle Fragen zu Firebird, Delphi®, IBExpert und Lazarus sind willkommen.

Einen Support-Termin vergeben wir schnellstmöglich nach Eingang Ihrer Supportanfrage und Prüfung Ihres Guthabens. Sollten Sie unsere Unterstützung benötigen, erfolgt die Abrechnung gemäß unserer Rahmenbedingungen, wie hier beschrieben: 

Standard Hotline: Montag - Freitag 8.00 -18.00 Uhr (MEZ):
Hotline Kundenkonto: - 1 Minute je verbrauchter Minute*
135 €/Stunde
Hotline Express: Montag - Sonntag 8.00 - 22.00 Uhr (MEZ):
Hotline Kundenkonto: - 2 Minuten je verbrauchter Minute*
270 €/Stunde
Hotline Express Emergency: Montag - Sonntag ab 22.00 Uhr (MEZ):
Hotline Kundenkonto: - 3 Minuten je verbrauchter Minute*
405 €/Stunde

* Wir empfehlen, ein prepaid Hotline-Kundenkonto mit einem ausreichend hohen Guthaben einzurichten (z.B. 960 Minuten), so können wir Ihnen im Notfall schnell und unbürokratisch helfen und Sie sparen Zeit und Geld. Ihr Guthaben verfällt nicht und kann bei Bedarf abgerufen werden.
Ihr Hotline-Kundenkonto wird mit der genauen Anzahl der verbrauchten Minuten einer Remote- oder Telefon Session belastet.

Unsere Preisliste finden Sie hier.

Und so geht's: Nach Freischaltung Ihres Hotline-Kundenkontos im IBExpert Download Center können Sie unter Hotline Information Ihren Prepaid Code, Ihre verfügbaren Hotline-Minuten und die Auflistung Ihrer Hotline-Sessions mit Start- und Endzeit einsehen. Sie werden über Ihre Hotline-Telefonnummer, die Sie per E-Mail erhalten, direkt mit Ihrem Ansprechpartner verbunden (kein Call Center!). Ihren Prepaid Code teilen Sie Ihrem Ansprechpartner bei Ihrem Anruf mit.

Unsere IBExpert und Firebird Hotline steht Ihnen auch in Ländern außerhalb Deutschlands zur Verfügung.

Eine Übersicht aller IBExpert Dienstleistungen und Gebühren finden Sie unter Alle Produkte & Preise. Wenn Sie weitere Fragen haben, senden Sie bitte eine Mail an sales@ibexpert.biz


IBExpert Firebird Replication

We implement Firebird technology-based replication for our clients. In our view, the majority of marketed all-in-one replication tools are of limited usefulness and tend to be a waste of time. Only in Firebird 4 is a basic replication integrated, but this still leaves many wishes unfulfilled.

The technology we use has already proven itself in real-world use at hundreds of locations and with databases of up to 500 GB.

Our technology can be used for all Firebird versions from 2.5 onwards and masters partial replication, the rules of which can be determined and adapted by the customer without having to define complicated INI files or GUIs. The implementation is based on Firebird stored procedures and trigger source codes, which allow our customers to extend and adapt them themselves at a later date.

It is important to us that our customers do not have to use software compiled only for this purpose!

We teach the complete process of replication that we implement in such a way that the customer acquires the ability to integrate it into his software, and to initialise and run the corresponding processes (synchronous replication in real time/synchronous replication in near real time/asynchronous replication/master-slave/master-multi-slave/multi-master) himself based on our technology according to his own specifications.

We distinguish whether our system is used, for example, only on one server as a backup, or only at locations in a corporate group, or whether the replication is to be passed on with the customer's own software to hundreds or thousands of end customer installations. Therefore, we always request a brief description of the customer structure and approximate current customer numbers where replication is to be deployed.

Our offer includes not only the replication technology implemented individually by ourselves on the basis of the customer's databases, but also a recommended on-site or remote workshop to impart the complete technology. We grant the right to unlimited distribution to end customers with your own software directly with the order confirmation, without any further complex licensing procedures.

For later extensions or adaptations to newer Firebird versions, we are available as required within the scope of our IBExpert and Firebird Hotline. Unlimited adaptations can also be carried out by the customer.

Enquiries for quotations to sales@ibexpert.biz
Please provide us with a brief description of your application and, if possible, a metadata-only backup of your database.

What our customers have to say about our replication:
Database conversion from Firebird 2.1 to Firebird 3.0 and implementation of a database replication
"Our brief was to migrate a database of about 150 GB (which originally emerged from BDE (Paradox), migrated to InterBase 6 and later from Firebird 1.0 to 2.1) to Firebird 3 within a short period of time, and construct a replication over a VPN line.
""We contacted IBExpert GmbH, who made us an offer corresponding to our budget..
"Following a detailed analysis of our database by the IBExpert Team, it unfortunately transpired that the estimated costs could not be maintained.
"However, we quickly agreed to take over the necessary database reconstruction ourselves, so that we were back on budget. We received valuable and practical tips from the IBExpert team which facilitated the implementation.
"In order to improve our knowledge regarding Firebird 3 and replication, we visited their Bootcamp in 2017. A great event, due to Mr. Klemt’s competence and extensive knowledge all participants took a lot of information away with them from this event and no question remained unanswered.
"The database rebuild and replication implementation took place over a weekend. We could fully rely on Mr. Klemt, who was available late into the evening and who made a significant contribution to the success of the project. The replication was remotely set up by him and put into operation in the short frame available, so that on Monday the remodeled Firebird 3 database including replication was in production.
"In conclusion, I would like to say that anyone wishing to replicate Firebird or seeking solutions in the database environment is in the best hands with Mr. Klemt; he does not mince words, he is competent, his training and communication is certainly not boring. He has proved to be a fair partner for us."


Uwe Cramer, Intellekta GmbH

More about replication


Database Repair & Analysis

(German-language version below)

IBExpert Database analysis/database repair

If you are confronted with a damaged or corrupt database we can often offer a rapid solution without even having to come out and analyze the corrupt database on site. Before we can provide you with our database repair estimate, we must first analyse your database.

For the database analysis we charge a prepayment fee of EUR 150.00. Should you require a prompt database analysis, e.g. due to an emergency, we charge a prepayment fee of EUR 300.00.

If a database repair is possible following the analysis, you will receive our written cost estimate. Experience shows that we can repair most databases.

After you have contacted us and outlined your database problem, send a copy of your database (postal address here) compressed as a ZIP or 7Z file, ideally on a USB stick or USB drive. Please ensure as far as possible that individual ZIP files are no larger than 10MB (most ZIP applications allow you to pack into multiple files).

Please don't forget to mention which software you are using and which Firebird version is in use.

If the database is smaller than 50MB, you can mail it to us at: sales@ibexpert.biz.

Alternatively we can provide an FTP upload address for larger databases.

Any data media supplied will be returned and charged separately if wished. 





IBExpert Datenbankanalyse/Datenbankreparatur

Wenn Ihre Datenbank beschädigt ist, können wir eine schnelle Lösung anbieten, ohne dass wir bei Ihnen vor Ort die defekte Datenbank analysieren müssen. Bevor wir Ihnen unseren Kostenvoranschlag zur Datenbankreparatur unterbreiten können, müssen wir zunächst einmal ihre Datenbank analysieren.

Für die Datenbankanalyse berechnen wir eine Aufwandsentschädigung von 150,00 Euro per Vorauskasse. Sollten Sie eine zeitnahe Datenbankanalyse wünschen, z.B. wegen eines Notfalls, berechnen wir eine Aufwandsentschädigung in Höhe von 300,00 Euro per Vorauskasse.

Wenn nach erfolgter Analyse eine Datenbankreparatur möglich ist, erhalten Sie unseren Kostenvoranschlag. Erfahrungswerte zeigen, dass wir die meisten Datenbanken reparieren können.

Nachdem Sie uns kontaktiert und Ihre Datenbankproblematik geschildert haben, senden Sie uns (unsere Postanschrift finden Sie hier) eine Kopie Ihrer Datenbank, gepackt als ZIP oder 7Z Datei vorzugsweise auf einem USB Stick oder USB-Laufwerk. Die einzelnen ZIP-Dateien sollten möglichst nicht größer als 10MB sein (die meisten ZIP Anwendungen ermöglichen die Komprimierung in mehrere Dateien).

Bitte vergessen Sie nicht, uns die eingesetzte Software- und Firebird Version mitzuteilen.

Wenn die Datenbank kleiner als 50MB ist, können Sie diese auch per E-Mail senden: sales@ibexpert.biz.

Für große Datenbanken erhalten Sie eine FTP Upload Adresse.

Gelieferte Medien erhalten Sie auf Wunsch mit separater Rechnung zurück. 


IBExpert und Firebird Power Workshop



(German-language version below)

Firebird Administrator intensive training with emphasis on speed, security and interfaces.

In our Firebird Power Workshop, we focus on the tasks that an administrator needs to perform to effectively run a Firebird server. The aim is to achieve the optimum speed of the hardware and software used, to guarantee maximum operational reliability, and to be optimally prepared for a breakdown by means of a suitable worst-case scenario. We will also concentrate on the independent implementation of simple requirements in the areas of import, export and reporting.

Overview of topics

1. Basics

After an introduction to the basic Firebird technology, the most important files and installation versions for Windows and Linux with Firebird versions 2.x and 3.x will be explained.

2. Hardware

  • Using suitable tools, the Firebird performance with the hardware/software combination used is measured and compared with other systems
  • Effects of Firebird versions and configurations for processors, memory, I/O load, and process priority
  • Comparison of the different I/O subsystem techniques HDD, SSD, SATA, M.2, NVME, RAID, SAN, IOPS, Bandwidth, Reads, Writes, etc.
  • Comparison of different CPU types, clock cycle, L1/L2/L3 cache, cores, Xeon E3/E5/E7
  • Expedient use of memory, RAM disk, temporary memory, ECC, DDR, clock cycle
  • Locate the bottleneck in your own server
  • Supplementary hardware for performance optimization
  • Recommendations for optimal hardware

3. Operating system

  • What optimizations can I make in Windows and Linux operating systems?
  • Comparison of a Firebird server running on a virtual machine or without virtualization
  • Check relevant drivers and adjust configuration settings
  • DLL version check and effects
  • Effects and adjustments Antivirus, backup and image software
  • Trojan-safe configuration
  • Operating systems recommendations for Firebird and dependencies

4. Backup/Restore

  • Data backup with gbak and other solutions
  • The most important backup/restore parameters
  • Partial backup of the database
  • IBExpert tools for backup, restore, e-mail message in case of errors, database dump
  • IBExpert tools for automating database comparisons, data and metadata using scripts
  • Shadow copy as a turbo backup
  • Suitable measures to prevent errors from the outset
  • Concurrent incremental backup
  • Basic replication knowledge

5. Troubleshooting

  • Detect errors in the database
  • Troubleshooting strategies and tools
  • Correct errors using transaction counter limit
  • Detect and correct incorrect metadata
  • Recognize and correct faulty data
  • Combine databases from different scripts
  • Errors opening the database and gfix
  • Errors after opening the database when accessing certain table data
  • IBExpert repair tools, Database Inside, if nothing else helps
  • IBExpert services and Hotline support for repairs

6. Interfaces

  • Automatically generate reports with IBExpert Scripting and store them as PDF files or send them by e-mail
  • Set up data interfaces for ODBC
  • Data export to ODBC, CSV, Excel, HTML, etc. using IBExpert Scripting
  • Data import from ODBC, CSV, Excel, HTML, etc. using IBExpert Scripting
  • Read or write access to SMTP, POP3 and IMAP e-mail
  • Automate data synchronization with script directly to MSSQL, Oracle, MySQL, etc.
  • Convert data tables from or to other platforms
  • Direct connection using additional tools to PayPal, Sharepoint, SAP, Salesforce, Magento, Dropbox, Google Calendar, Google Contacts, JSON, REST, XML etc.

7. Users and groups

  • Create, change and delete users with password
  • Create, change and delete roles
  • Differences users, roles and permissions in Firebird 2.x and Firebird 3.x
  • Transfering the user database when updating Firebird

8. Database performance

  • System tables and tools to detect long-running SQL queries
  • Identify and eliminate the impact of long-running transactions
  • Trace API and MON$ tables
  • Detect and create missing indices
  • Comprehending and using Expression Indices
  • Understanding and updating index statistics
  • Optimize index structures and avoid duplicates

9. Monitoring and Audit

  • Log database changes with IBExpert log tools
  • Log slow SQLs around the clock
  • What's it doing now? External tools at operating system level for file system and process logging

10. Tips and tricks




IBExpert und Firebird Power Workshop

Firebird Administrator intensiv-Training mit Schwerpunkt auf Geschwindigkeit, Sicherheit und Schnittstellen.

In unserem Firebird Power Workshop konzentrieren wir uns auf die Aufgaben, die ein Administrator für den effektiven Betrieb eines Firebird-Servers erfüllen muss. Ziel ist es, die optimale Geschwindigkeit der eingesetzten Hardware und Software zu erreichen, eine maximale Betriebssicherheit zu gewährleisten, sowie durch ein geeignetes Worst-Case-Szenario für einen Ausfall optimal vorbereitet zu sein. Auch auf die selbstständige Umsetzung einfacher Anforderungen im Bereich Import, Export und Reporting werden wir uns konzentrieren.

Inhalt

1. Grundlagen

Nach einer Einführung über die Basistechnologie werden die wichtigsten Dateien und Installationsversionen für Windows und Linux mit den Firebird Versionen 2.x und 3.x vermittelt.

2. Hardware

  • Durch geeignete Werkzeuge wird die Firebird Geschwindigkeit der eingesetzten Hardware/Software-Kombination gemessen und mit anderen Systemen verglichen
  • Auswirkungen der Firebird Versionen und Einstellungen für Prozessoren, Arbeitsspeicher, I/O-Last und Prozesspriorität
  • Vergleich der verschiedenen I/O-Subsystem-Techniken HDD, SSD, SATA, M.2, NVME, RAID, SAN, IOPS, Bandbreite, Reads, Writes, etc.
  • Vergleich der verschiedenen CPU-Typen, Takt, L1/L2/L3 Cache, Cores, Xeon E3/E5/E7
  • Sinnvoller Einsatz des Arbeitsspeichers, RAM Disk, Temporärspeicher, ECC, DDR, Takt
  • Den Flaschenhals im eigenen Server lokalisieren
  • Ergänzende Hardware für Performance-Optimierung
  • Empfehlungen optimaler Hardware

3. Betriebssystem

  • Welche Optimierungen kann ich im Betriebssystem Windows bzw. Linux vornehmen
  • Vergleich eines Firebird Servers beim Betrieb auf einer virtuellen Maschine oder ohne Virtualisierung
  • Relevante Treiber prüfen und Einstellungen anpassen
  • DLL Versionsprüfung und Auswirkungen
  • Auswirkungen und Anpassungen Antiviren-, Backup- und Image-Software
  • Trojaner-sichere Konfiguration
  • Empfehlungen Betriebssysteme für Firebird und Abhängigkeiten

4. Backup/Restore

  • Datensicherung mit gbak und anderen Lösungen
  • Die wichtigsten Backup/Restore Parameter
  • partielle Sicherung der Datenbank
  • IBExpert Werkzeuge für Backup, Restore, E-Mail Nachricht bei Fehlern, Datenbank Dump
  • IBExpert Werkzeuge für Datenbankvergleiche Daten und Metadaten über Scripte automatisieren
  • Shadowcopy als Turbobackup
  • Geeignete Maßnahmen, um Fehler von vornherein zu vermeiden
  • Mitlaufende inkrementelle Sicherung
  • Basiswissen Replikation

5. Fehler beheben

  • Fehler in der Datenbank erkennen
  • Strategien und Tools zur Fehlerbehebung
  • Fehler durch Transaktionszählergrenze beheben
  • Fehlerhafte Metadaten erkennen und beheben
  • Fehlerhafte Daten erkennen und beheben
  • Datenbanken aus verschiedenen Scripten zusammensetzen
  • Fehler beim Öffnen der Datenbank und gfix
  • Fehler nach dem Öffnen der Datenbank bei Zugriff auf bestimmte Tabellendaten
  • IBExpert Reparaturwerkzeuge, Database Inside, wenn nichts anderes hilft
  • IBExpert Dienstleistungen und Hotline Support für Reparaturen

6. Schnittstellen

  • Mit IBExpert Scripting automatisiert Berichte erzeugen und als PDF ablegen oder per E-Mail versenden
  • Datenschnittstellen für ODBC einrichten
  • Datenexport nach ODBC, CSV, Excel, HTML, etc. über IBExpert Scripting
  • Datenimport von ODBC, CSV, Excel, HTML, etc. über IBExpert Scripting
  • Lese- bzw. Schreibzugriff auf SMTP, POP3 und IMAP E-Mail
  • Datenabgleich mit Script direkt automatisieren an MSSQL, Oracle, MySQL, etc.
  • Datentabellen von oder in andere Plattformen konvertieren
  • Direkte Anbindung über Zusatztools auf PayPal, Sharepoint, SAP, Salesforce, Magento, Dropbox, Google Kalender, Google Kontakte, JSON, REST, XML etc.

7. Benutzer und Gruppen

  • Anlegen, ändern und löschen von Benutzern mit Kennwort
  • Anlegen, ändern und löschen von Roles
  • Unterschiede Benutzer, Roles und Rechte in Firebird 2.x und Firebird 3.x
  • Übernahme der Benutzerdatenbank beim Firebird Update

8. Datenbank Performance

  • Systemtabellen und Werkzeuge, um langlaufende SQL Abfragen zu erkennen
  • Auswirkungen langlaufender Transaktionen erkennen und beheben
  • Trace API und MON$ Tabellen
  • Fehlende Indizes erkennen und erstellen
  • Expression Indizes verstehen und benutzen
  • Indexstatistik verstehen und aktualisieren
  • Indexstrukturen optimieren und Dubletten vermeiden

9. Monitoring und Audit

  • Datenbankänderungen protokollieren mit IBExpert Log Werkzeugen
  • langsame SQLs rund um die Uhr protokollieren
  • Was macht er denn jetzt schon wieder? Externe Werkzeuge auf Betriebssystemebene für Filesystem und Prozessprotokollierung

10. Tipps und Tricks




IBEScript.exe

IBEScript.exe can be found in the IBExpert root directory, and needs to be started from DOS. (This feature is unfortunately not included in the free IBExpert Personal Edition.)

For regulations regarding distribution of any of the IBExpert Server Tools modules (hkSCC.exe, ibescript.exe, ibescript.dll and fbcrypt) together with your application, please refer to the IBExpert Server Tools documentation contents page.

Syntax

 IBEScript script_filename [options]

  • -S = silent mode
  • -V<Verbose_file> = verbose output file. If <Verbose_file> exists, IBEScript will overwrite it.
  • -v<verbose_file> = verbose output file. If <verbose_file> exists, IBEScript will append message to this file.
  • -E = display only error messages.
  • -N = continue after error.
  • -A<seconds> = advanced progress: <seconds> specifies the time interval in seconds to display progress messages. If <seconds> is not specified, advanced progress information will be displayed every second. The following information is available:
    • SC - statements count, number of executed statements;
    • POC - percentage of completion;
    • TS - time spent;
    • ETL - estimated time left.
For INPUT scripts the name of the input script file name will also be displayed. Advanced progress information is displayed even if the -S option (silent mode) is specified.
  • -T = write timestamp into log.
  • -D = connections string (use it if your script does not contain CONNECT or CREATE DATABASE statements).
  • -P = connection password (use only with -D option).
  • -R = connection role (use only with -D option).
  • -U = connection user name (use only with -D option).
  • -C = character set (use only with -D option).
  • -l = client library file (gds32.dll if not specified).
  • -L<1|2|3> = SQL dialect (use only with -D option; 1 if not specified).
  • -i = idle priority.
  • -G<variable_name>=<value> = specify global variable values.
  • -I<file_path_and_name> = By default (without the -I option specified). IBEScript.exe processes IBEScript.ini files immediately after starting in the following order:
1. IBEScript.ini in the IBEScript.exe directory, if it exists,
2. IBEScript.ini in the current directory, if it exists. If only -I is specified without a file name, any INI-file will be ignored. If a file name is specified after -I (e.g. -I"C:\my files\myibescript.ini") ONLY this file will be processed if it exists. Parameters specified in the command line will overwrite corresponding ones from an INI file.
  • -A<seconds> = display advanced progress information every <seconds> second(s) (default 1)
  • -e = encrypt a script file (no execution will be performed)
  • -d = decrypt an encrypted script file (no execution will be performed)
  • -p<password> = encrypt/decrypt password
  • -o<file_name> = output file for encrypted and decrypted scripts

WARNING! All options are case-sensitive!

Example 1: IBEScript C:\My Scripts\CreateDB.sql
Example 2: IBEScript C:\MyScripts\CreateDB.sql -S -VScriptLog.txt

The following features are also available: when no password and/or user name are specified in the CONNECT or CREATE DATABASE statements, a login dialog will appear. It is also possible to change the connection character set (SET NAMES) and garbage collection option (SET GARBAGE_COLLECT) before the RECONNECT statement. Any SET commands mentioned which are followed by a RECONNECT statement will affect the new connection.

It is also possible to use environment variables in INPUT, OUTPUT and SET BLOBFILE statements (see example below).

UTF8 BOM is skipped when executing a script from file.
The OUTPUT command also supports the OctetsAsHex option, which allows the extraction of CHAR(n) CHARACTER SET OCTETS values in hexadecimal format.


IBEScript examples

1. IBEBlock technology to create procedures with access to data in different Firebird/InterBase® databases

A simple script to copy data from one Firebird/InterBase® database to another:

 execute ibeblock
 as
 begin
   FBSrc  = ibec_CreateConnection(__ctFirebird,'DBName="localhost:C:\DB1.FDB";
   ClientLib=C:\Program Files\Firebird\Bin\fbclient.dll;
   user=SYSDBA; password=masterkey; names=WIN1252; sqldialect=3');
   FBDest = ibec_CreateConnection(__ctFirebird,'DBName="localhost:C:\DB2.FDB";
   ClientLib=C:\Program Files\Firebird\Bin\fbclient.dll;
   user=SYSDBA; password=masterkey; names=WIN1252; sqldialect=3');
   ibec_UseConnection(FbSrc);
   for select CustNo, Company, Addr1 from customer order by company into :CustNo, :Company,
     :Addr1
   do
   begin
      use FBDest;
      INSERT INTO CUSTOMER (CustNo, Company, Addr1) VALUES (:CustNo, :Company, :Addr1);
      use FBSrc;
   end
   use FBDest;
   COMMIT;
   ibec_CloseConnection(FBSrc);
   ibec_CloseConnection(FBDest);
 end

2. ODBC access to all ODBC data sources for importing or exporting data from a script

The same can also be done with any ODBC data source as the source and/or destination (this functionality has been tested with IBM DB2®, Oracle®, MS Access®, Sybase® etc.):

 execute ibeblock
 as
 begin
   OdbcCon = ibec_CreateConnection(__ctODBC, 'DBQ=C:\demo.mdb; DRIVER=Microsoft Access
   Driver (*.mdb)');
   FBCon = ibec_CreateConnection(__ctFirebird,'DBName="AVX-MAIN:D:\FB2_DATA\IBEHELP.FBA";
   ClientLib=C:\Program Files\Firebird\Bin\fbclient.dll;
   user=SYSDBA; password=masterkey; names=WIN1251; sqldialect=3');
   ibec_UseConnection(OdbcCon);
   for select CustNo, Company, Addr1 from customer order by company into :CustNo, :Company,
   :Addr1
   do
   begin
      use FBCon;
   INSERT INTO CUSTOMER (CustNo, Company, Addr1) VALUES (:CustNo, :Company, :Addr1);
      use OdbcCon;
   end
   use FBCon;
   COMMIT;
   ibec_CloseConnection(OdbcCon);
   ibec_CloseConnection(FBCon);
 end

3. Comparing databases from scripts

The following script compares the structure of two Firebird/InterBase® databases and stores a script that can be used to synchronize the database structure in the destination database: Save the following text as c:\comp.sql:

 execute ibeblock
 as
 begin
   create connection ReferenceDB dbname 'localhost:c:\RefDB.fdb'
   password 'masterkey' user 'SYSDBA'
   clientlib 'C:\Program Files\Firebird\bin\fbclient.dll'; 

   create connection CustomerDB dbname 'localhost:c:\customerDB.fdb'
   password 'masterkey' user 'SYSDBA'
   clientlib 'C:\Program Files\Firebird\bin\fbclient.dll';

   cbb = 'execute ibeblock (LogMessage variant)
          as
          begin
            ibec_progress(LogMessage);
          end';

   ibec_CompareMetadata(ReferenceDB, CustomerDB, 'C:\CompRes.sql', 'OmitDescriptions; OmitGrants', cbb);

   close connection ReferenceDB;
   close connection CustomerDB;
 end

Now run the following command line to create the script and synchronize the databases:

 ibescript.exe c:\comp.sql
 ibescript.exe c:\compres.sql

4. Create automatic reports

ibec_CreateReport prepares a report from a specified source and returns prepared report data. For preparing the initial report please refer to the IBExpert Report Manager.

This feature can be used for executing reports created with the IBExpert Report Manager in command-line mode, for example with batch files. The monthly sales report, invoices or other such reports can be designed in the Report Manager and executed with simple SQL statements. The result can then be saved in the database as a PDF file or other formats and sent by email or exported using ibec_ExportReport.

 execute ibeblock
  as
  begin
    Params['HeaderMemo'] = '';
    Params['MEMO2'] = 2;

    SELECT IBE$REPORT_SOURCE FROM ibe$reports
    where ibe$report_id = 4
    into :RepSrc;

    Report = ibec_CreateReport(RepSrc, Params, null);
    ibec_SaveToFile('D:\reptest.fp3', Report, 0);
            Res = ibec_ExportReport(Report, 'D:\reptest.pdf', __erPDF, 'EmbeddedFonts=TRUE');
    Res = ibec_ExportReport(Report, 'D:\reptest.jpg', __erJPEG, 'CropImages; Quality=90');
 end

5. File import into blob fields from SQL scripts

The following script imports the data from the files into the table TEST:

 SET BLOBFILE 'C:\f1.jpg';
 INSERT INTO TEST(ID,BLOBCOL) VALUES (1, :h00000000_7FFFFFFF);
 SET BLOBFILE 'C:\f2.jpg';
 INSERT INTO TEST(ID,BLOBCOL) VALUES (2, :h00000000_7FFFFFFF);
 SET BLOBFILE 'C:\f3.jpg';
 INSERT INTO TEST(ID,BLOBCOL) VALUES (3, :h00000000_7FFFFFFF);

The same syntax can be used for updating blob data.

6. Using environment variables in INPUT, OUTPUT and SET BLOBFILE statements

 execute ibeblock 
 as
 begin
 ibec_SetEnvironmentVariable('MyScriptDir', 'D:\Scripts\MyScripts');
 ibec_SetEnvironmentVariable('MyDataDir', 'D:\Data');
 ibec_SetEnvironmentVariable('MyBlobData', 'D:\Data\Blobs');
 end;

 SET BLOBFILE '\mytable.lob';

 OUTPUT '\mytable.sql';
 select * from mytable
 asinsert;
 COMMIT;

 INPUT '\ProcessData.sql';

These are just a few examples of the many tasks you can do with IBEScript. The full syntax and parameter list for ibec_CompareMetadata can be found in the online documentation, along with a full list of all current IBEBlock commands.


Encryption & decryption

There are two possible ways to encrypt/decrypt scripts and to execute encrypted scripts:

  1. Encrypting without the password. In this case there is no possibility to decrypt an encrypted script but it is possible to execute this script with IBEScript.
  2. Encrypting with the password. In this case it possible to decrypt the script and execute it with IBExpert if the correct password is specified.

The following options control the encrypting and decrypting:

  • -e = encrypts a script file and creates a file with the extension .esql if the output file is not specified (no execution will be performed).
  • -d = decrypts an encrypted script file if it was encrypted with password (no execution will be performed).
  • -p<password> = encrypt/decrypt password.
  • -o<file_name> = output file name for encrypted and decrypted scripts.

Again: all options are case-sensitive!

Example 1

 IBEScript "C:\MyScripts\CreateDB.sql"

Example 2

 IBEScript C:\MyScripts\CreateDB.sql -S -UScriptLog.txt

This product can be purchased as part of the distribution software listed above.

See also:
Firebird Interactive SQL Utility
IBEBlock
Script Executive