Kamis, Juli 09, 2009

Delphi 5 - String Literals May Have At Most 255 Elements

"String literals may have at most 255 elements", begitu pesan yang muncul di kompiler Delphi 5 Professional saat kompilasi sebuah program untuk mencetak label 2D QRCode di printer label SATO seri CL.

Apa yang salah?

Saya pastikan semua variabel dan fungsi yang dipakai menggunakan TStrings, TStringList, dan String, juga tidak ada konstanta ataupun Tfield yang terlibat. Berarti harusnya OK, karena secara default, string di Delphi 5 adalah ANSIString yang ukurannya sampai 2^31 karakter, bukan shortstring yang maksimumnya 255 karakter.

Aneh sekali...

Setelah sedikit mencari di google, ketemu jawabnya. Memang ada keterbatasan di Delphi Editor (IDE) untuk menampilkan satu string yang panjangnya lebih dari 255 karakter.

Solusinya?

Stringnya dipecah saja jadi bagian-bagian berukuran kurang dari 255 karakter. Misal:

270 karakter
'abcdefghijklmnopqrstuvwxyz/.,-=ABCD...'

diubah menjadi beberapa potong string :

200 karakter + 70 karakter
'abcdefghijklmnopqrstuvwxyz/.,-=ABCD...' +
'1234567890)(*%$~!#@..,wxyz/.,-=..'

Begitu saja solusinya.

Tidak ada komentar: