home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2000 May
/
Chip_2000-05_cd1.bin
/
tema
/
SW602
/
Winbase
/
EShop_demo
/
ODESLIMAILZAK.PSM
< prev
next >
Wrap
Text File
|
2000-03-16
|
3KB
|
84 lines
{$$3219929050 . }PROCEDURE OdesliMailZak(IN idobj INT, IN idkomu INT, IN storno_obj BOOLEAN);
BEGIN
DECLARE Letter,res,i INT;
DECLARE Profile CHAR(100);
DECLARE EmiPath, subj, SEmi, SIduz CHAR(30);
DECLARE typadr, typ char(10);
DECLARE kdo, komu, dikadr, kolik CHAR(50);
DECLARE co, dik CHAR(2000);
DECLARE heslo, objednavka, kdy, platba CHAR(20);
DECLARE wbaplname CHAR(100);
DECLARE dnes, ted CHAR(30);
SET typ="Internet";
SET dikadr="";
SELECT sys_par.vec_mail, sys_par.mail_dik INTO subj, dik FROM sys_par;
SELECT OBJ_HEADER.cis_eob, date2str(datum_d,3), money2str(K_UHRADE,0) INTO objednavka, kdy, kolik FROM OBJ_HEADER WHERE id_dobj=idobj;
SELECT date2str( Obj_header.datum+sys_par.splatnost,3) INTO platba FROM OBJ_HEADER, SYS_PAR WHERE id_dobj=idobj;
IF storno_obj THEN
BEGIN
SET subj="Potvrzeni STORNA objednavky";
SET co="VaÜe objednßvka Φφslo "+objednavka+" byla STORNOV┴NA";
END;
END IF;
SELECT sys_par.profil INTO Profile FROM sys_par;
SELECT Obchodni_partneri.mail_adres INTO dikadr
FROM Obchodni_partneri
WHERE (Obchodni_partneri.id=idkomu);
IF (dikadr<>"")
THEN BEGIN //0
SET heslo=NULL;
SET i = 0;
nav: LOOP BEGIN
SET res= InitWBmail(Profile,heslo);
IF res <> 511 THEN
LEAVE nav;
END IF;
SET i = i + 1;
IF i > 5 THEN
LEAVE nav;
END IF;
CALL Sleep(20000);
END; END LOOP nav;
IF res<>0 THEN BEGIN CALL log_write("chyba inicializace poÜty "+int2str(res)); CALL mailerr(res); END;
ELSE BEGIN //1
SET dik=dik||" "#13#10" Φφslo objednßvky: "||objednavka||" "#13#10" Φßstka k ·hrad∞: "||kolik||" "#13#10" termφn dodßnφ: "||kdy||" "#13#10" termφn splatnosti: "||platba;
SELECT sys_par.aplname, date2str(today,1) , time2str(now,1) INTO wbaplname,dnes, ted FROM sys_par;
IF storno_obj THEN CALL log_write(dnes+" "+ted+" "+wbaplname+" potvrzenφ storna");
ELSE CALL log_write(dnes+" "+ted+" "+wbaplname+" potvrzenφ objednßvky");
END IF;
IF (dikadr<>"") THEN BEGIN //01
IF storno_obj THEN SET dik=co; END IF;
SET res= LetterCreate(Subj,dik,130,Letter);
IF res<>0 THEN BEGIN CALL log_write("chyba p°i vytvß°enφ dopisu "+int2str(res)); CALL mailerr(res); END;
ELSE BEGIN //2
SET res= LetterAddAddr(Letter,dikadr, typ, FALSE);
IF res<>0 THEN
begin
CALL log_write("chyba adresßta "+int2str(res));
CALL mailerr(res);
end;
ELSE BEGIN //3
SET res= LetterSend(Letter);
IF res<>0 THEN BEGIN CALL log_write("chyba p°i odesφlßnφ poÜtou "+int2str(res)); CALL mailerr(res); END;
END IF; //4
END; END IF; //3
END; END IF; //2
END; END IF; //01
CALL CloseWBMail;
END; END IF; //1
END; END IF; //0
END