Birden fazla dosyayı sıkıştırmak: ZIPFILE

TROIA, birden fazla dosyayı tek bir zip arşivine sıkıştırmak için ZIPFILE komutunu sunar. Sıkıştırılacak dosyalar | (dikey çizgi) ile ayrılarak verilir:

OBJECT:
    STRING YOL1,
    STRING YOL2;

YOL1 = '*C:\TMP\dosya4.txt';
YOL2 = '*C:\TMP\dosya5.txt';

COPYFILE YOL1 INTO 'SunucuDosya4.txt';
COPYFILE YOL2 INTO 'SunucuDosya5.txt';

ZIPFILE 'SunucuDosya4.txt|SunucuDosya5.txt' INTO 'Demo.zip';

COPYFILE 'Demo.zip' INTO '*C:\TMP\Demo.zip';
DELETEFILE 'Demo.zip';

Dikkat: ZIPFILE komutu sunucu tarafındaki dosyalar üzerinde çalışır — client tarafındaki (*) dosyaları önce COPYFILE ile sunucuya taşımanız gerekir.

Arşivi açmak: UNZIPFILE

COPYFILE '*C:\TMP\Demo.zip' INTO 'Demo.zip';
UNZIPFILE 'Demo.zip' INTO '.\';

COPYFILE 'SunucuDosya4.txt' INTO '*C:\TMP\Acilan4.txt';
DELETEFILE 'Demo.zip';

Sonuç

ZIPFILE/UNZIPFILE çifti, birden fazla dosyayı tek seferde taşımanız gereken senaryolarda (rapor paketi, toplu dışa aktarım) işinizi görür — akış hep aynı: dosyaları sunucuya taşı (COPYFILE), sıkıştır (ZIPFILE), gerekirse geri client'a kopyala; açma tarafında ise arşivi sunucuya taşı, UNZIPFILE ile aç, ihtiyacınız olan dosyaları tekrar COPYFILE ile alın.