Troia ile etiket yazıcısından direkt etiket basmak.

Birinci adım etiket basacağımız etiket yazıcısı ile birlikte gelen etiket programı ile basıalcak olan etiketi birebir tasarlamak. Etikette kullanılacak tüm nesneler için yazı tipi olarak yazıcının kendi yazı tipi ve barkod tipleri seçilmeli. Bu program ile tasarlayıp çıktısını aldığımızda istenen etiketi elde etmiş isek. Program içinden yazdır deyip çıktıyı yazıcıya değil dosyaya gönderin. Bu genelde .prn uzantılı bir dosya yaratmış olacaktır. Bu dosyayı bir metin düzenleyicisi ile açıp içindeki verilerin sizin etiket tasarımında kullandığınız alanlar olduğunu görün. Bu hali ile troia için bu dosya bir txt dosyasıdır. Bu txt dosyasını troia ile açıp alanlara istediğiniz verileri yazıp son olarak bunu PRINTTEXT ile direkt yazıcıya gönderebilirsiniz.

OBJECT: 
 STRING SFILENAMESABLON,
 STRING DELIM,
 STRING STRINGVAR1,
 STRING STRINGVAR2,
 STRING STRDOC,
 STRING NEWSTR,
 STRING REPSTR;

STRINGVAR2 = 'Cp1252';
SFILENAMESABLON = 'ETIKETSABLON\';
STRINGVAR1 = '\\Fahri-pc\ARGOX';
SFILENAMESABLON = SFILENAMESABLON + 'RECETE.PRN';

LOOP AT TBLETK 
BEGIN
    OPEN FILE SFILENAMESABLON FORREAD;
    GETBLOCK STRDOC, DELIM;
    CLOSE FILE;
    REPSTR = 'SATIR1';
    NEWSTR = TBLETK_SATIR1;
    STRDOC = REPLACE( STRDOC, REPSTR, NEWSTR );
    REPSTR = 'SATIR2';
    NEWSTR = TBLETK_SATIR2;
    STRDOC = REPLACE( STRDOC, REPSTR, NEWSTR );
    REPSTR = 'SATIR3';
    NEWSTR = TBLETK_SATIR3;
    STRDOC = REPLACE( STRDOC, REPSTR, NEWSTR );
    REPSTR = 'SATIR4';
    NEWSTR = TBLETK_SATIR4;
    STRDOC = REPLACE( STRDOC, REPSTR, NEWSTR );
    REPSTR = 'SATIR5';
    NEWSTR = TBLETK_SATIR5;
    STRDOC = REPLACE( STRDOC, REPSTR, NEWSTR );
    REPSTR = 'SATIR6';
    NEWSTR = TBLETK_SATIR6;
    STRDOC = REPLACE( STRDOC, REPSTR, NEWSTR );
    REPSTR = 'SATIR7';
    NEWSTR = TBLETK_SATIR7;
    STRDOC = REPLACE( STRDOC, REPSTR, NEWSTR );
    REPSTR = 'SATIR8';
    NEWSTR = TBLETK_SATIR8;
    STRDOC = REPLACE( STRDOC, REPSTR, NEWSTR );
    REPSTR = 'SATIR9';
    NEWSTR = TBLETK_SATIR9;
    STRDOC = REPLACE( STRDOC, REPSTR, NEWSTR );
    PRINTTEXT STRDOC TO STRINGVAR1 CODEPAGE STRINGVAR2;
ENDLOOP;

MySQL e scriptlerin çakılması

Geliştirme SQL dosyasının ilk satırında aşağıdaki satır olmalı..

SET NAMES LATIN5;

Scripti işlemek için komut isteminde:

mysql -uKULLANICI -pSIFRE -hServerip

ile mysql bağlanılır.

showdatabases;

komutu ile veritabanları listelenir.

mysql -uKULLANICI -pSIFRE -hServerip  IAS602d < c:\hcmt82.sql

komutu ile script ilgili veritabanına çakılır.

Dahasonra da bu script hangi dialog veya sınıflarla ilgili ise çevir kaydet yapılır.

Troia otomatik mail attırmak.

/*RECETE REVIZE TARIHI 30 GUNU GECMIS ISE MAIL AT*/
OBJECT:
STRING TXT,
STRING USR,
STRING SUBTEXT,
STRING RENK,
STRING HAYALI,
INTEGER MATBOY;

MATBOY=STRLEN(TBLSARJ_MATERIAL);
MATBOY=MATBOY-1;
HAYALI=STRSTR(TBLSARJ_MATERIAL,0,MATBOY);
HAYALI=’H’+HAYALI;
RENK=STRSTR(TBLSARJ_VOPTIONS,9,3);
SELECT CASE WHEN CHANGEDBY=” THEN CREATEDAT ELSE CHANGEDAT END AS CREATEDAT, CASE WHEN CHANGEDBY=” THEN DATEDIFF(DAY,CREATEDAT,GETDATE()) ELSE DATEDIFF(DAY,
CHANGEDAT,GETDATE()) END AS TLINE
FROM PNTFBOMASSREV
WHERE BOMNUMBER=HAYALI
AND OPTIONKEY=RENK
INTO TBLREVIZE;
IF SELECTED THEN

IF TBLREVIZE_TLINE > 30 THEN
SELECT *
FROM IASUSERS
WHERE CLIENT = SYS_CLIENT
AND USERNAME = SYS_USER;

SELECT ‘R: ‘+STEXT AS RENK
FROM IASVAROPTIONX
WHERE VARIANTKEY=’L’
AND ATTRIBUTEKEY=’02′
AND OPTIONKEY=RENK
INTO TBLR;

TXT=SSARJ + TOCHAR(13) +TBLSARJ_MATERIAL+ TOCHAR(13) +TBLR_RENK+ TOCHAR(13) +TBLREVIZE_CREATEDAT+ TOCHAR(13) +TBLREVIZE_TLINE+ TOCHAR(13) +SYS_USER;
USR=’fdonmez@penti.com.tr’+TOCHAR(59)+’bkoc@penti.com.tr’+TOCHAR(59)+’laboratuvar@penti.com.tr’+TOCHAR(59)+’stin@penti.com.tr’;
USR=USR+TOCHAR(59)+’boyasarj@penti.com.tr’+TOCHAR(59)+’boyahane1@penti.com.tr’;

SUBTEXT=’IAS Boyahane Reçete Revize 30 günü geçen kontrol..’;
SENDMAIL MESSAGE TXT TOADDRESS USR SUBJECT SUBTEXT FROM IASUSERS_MAILADRESS ;
ENDIF;

ENDIF;