Για να αναβαθμίσουμε την βάση δεδομένων της EMDI από ISO8859-1 σε UTF8 ακολουθούμε τα παρακάτω βήματα:

  1. Κάνουμε backup τον φάκελο της EMDI (συνήθως C:\Program Files (x86)\SBZ systems\EMDI)
  2. Εγκαθιστούμε τη firebird 2.5 αν δεν είναι ήδη εγκατεστημένη
  3. Κατεβάζουμε από εδώ το πρόγραμμα μετατροπής και τρέχουμε το “utf8firebirdconvert.exe”
  4. Επιλέγουμε τη βάση (συνήθως C:\Program Files (x86)\SBZ systems\EMDI\dbs\main.fdb) και πατάμε “auto”
  5. Περιμένουμε να ολοκληρωθεί η διαδικασία (και τα 5 βήματα)
  6. Κάνουμε απεγκατάσταση της firebird 2.5 από τα Windows και προχωράμε κανονικά σε αναβάθμιση της EMDI.
  7. Στο settings.ini αλλάζουμε το charset σε UTF8 και αν έχει οριστεί το library από fbembed.dll σε fbclient.dll
  8. Στις παλιές φόρμες, ανοίγουμε με notepad++ και πατάμε από το μενού Κωδικοποίηση–>μετατροπή σε utf-8
    διαγράφοντας και το charset στο head της html (όλο το content=”text/html; charset=windows-1253″).

 

Σημειώσεις:

  • Αν πετάξει σφάλμα ανοίγουμε τη βάση από ibexpert και πάμε στον αντίστοιχο πίνακα (πχ “dikaivmata”)
    και στην καρτέλα “Constraints” βγάζουμε από το “On Field” το πεδίο που μας αναφέρει (πχ “Titlos”).
    Τέλος πατάμε εκτέλεση (πάνω αριστερά τον κεραυνό).
  • Στο settings.ini μπορεί να χρειαστεί να βάλουμε στο library το full path του fbclient.dll
    (συνήθως C:\Program Files (x86)\Firebird\Firebird_3_0\fbclient.dll)
  • Για τις φόρμες εκτύπωσης, ενδέχεται να χρειαστεί να τσεκάρουμε στις Ρυθμίσεις –> Στοιχεία και σχεδιασμός παραστατικών το Κωδικοποίηση UTF8.
  • Στις παλιές custom αναφορές ίσως να χρειάζεται αλλαγή σε κάποια alias, πχ στο as “Περιγραφή παραστατικού”, τα οποία πλέον μπορεί να είναι μέχρι 16 χαρακτήρες
  • Εάν ο πελάτης έχει παλαιές .txt φόρμες, θα πρέπει να αφήσουμε ξετσεκαρισμένη την επιλογή “Κωδικοποίηση UTF8” στο μενού Ρυθμίσεις –> Στοιχεία και σχεδιασμός παραστατικών.