home *** CD-ROM | disk | FTP | other *** search
/ Chip 2000 May / Chip_2000-05_cd1.bin / tema / SW602 / Winbase / EShop_demo / INFOLOGIN.PSM < prev    next >
Text File  |  2000-03-16  |  3KB  |  86 lines

  1. {$$3219929048 .                              }PROCEDURE infologin(IN idkomu INT, IN intr_log CHAR(20));
  2. BEGIN
  3.  
  4.   DECLARE Letter,res,i       INT;
  5.   DECLARE co               CHAR(500);
  6.   DECLARE Profile, wbaplname CHAR(100);
  7.   DECLARE kdo,komu         CHAR(50);
  8.   DECLARE subj, dnes, ted  CHAR(30);
  9.   DECLARE heslo            CHAR(20);  
  10.   DECLARE typadr CHAR(10); 
  11.  
  12.   SET typadr="Internet";
  13.   SET komu="";
  14.  
  15.   SET subj="602ESHOP";
  16.  
  17.   SELECT sys_par.profil  INTO Profile FROM sys_par;  
  18.    SELECT Obchodni_partneri.mail_adres INTO komu
  19.    FROM Obchodni_partneri
  20.    WHERE (Obchodni_partneri.id=idkomu);
  21.  
  22.  if ((idkomu>=0) AND (komu=""))
  23.   THEN
  24.    SELECT Obchodnici.mail_adres,  Obchodnici.mailtyp    INTO  komu,typadr
  25.    FROM Obchodni_partneri, Obchodnici
  26.    WHERE Obchodni_partneri.id_obchodnika=Obchodnici.id_obchodnika
  27.    AND (Obchodni_partneri.id=idkomu);
  28.   END IF;
  29.  
  30.   SET co="DalÜφ objednßvku prosφme po°izujte jako registrovanφ zßkaznφci s  p°ihlaÜovacφm jmΘnem:  "+intr_log;
  31.   if (intr_log="")
  32.    then CALL log_write("!!!!POZOR PR┴ZDN╔ logname !!!!!!");
  33.    else CALL log_write("logname: "+intr_log);
  34.   END IF;
  35.  
  36.  SELECT sys_par.aplname,  date2str(today,1) , time2str(now,1) INTO wbaplname,dnes, ted FROM sys_par;  
  37.  CALL log_write(dnes+" "+ted+" "+wbaplname+"  login zßkaznφka");
  38.  
  39.  if ((idkomu>=0) AND (komu=""))
  40.   THEN
  41.    SELECT Obchodnici.mail_adres,  Obchodnici.mailtyp    INTO komu,typadr
  42.    FROM Obchodnici, Default_hodnoty
  43.    WHERE Default_hodnoty.obchodnik=Obchodnici.id_obchodnika;  END IF;
  44.  
  45.   IF  (komu<>"")
  46.    THEN  BEGIN //0
  47.     SET heslo=NULL;
  48.     SET i = 0;
  49.   nav: LOOP BEGIN    
  50.     SET res= InitWBmail(Profile,heslo);
  51.     IF res <> 511 THEN
  52.        LEAVE nav;
  53.     END IF;
  54.     SET i = i + 1;
  55.     IF i > 5 THEN
  56.        LEAVE nav;
  57.     END IF;
  58.     CALL Sleep(20000);
  59.   END; END LOOP nav; 
  60.      IF res<>0 THEN  BEGIN  CALL log_write("chyba inicializace poÜty "+int2str(res)); CALL mailerr(res); END;
  61.       ELSE  BEGIN     //1
  62.  
  63.  IF  (komu<>"") THEN BEGIN  //01
  64.    SET res= LetterCreate(Subj,co,130,Letter);
  65.     IF res<>0 THEN  BEGIN  CALL log_write("chyba p°i vytvß°enφ dopisu "+int2str(res)); CALL mailerr(res); END;
  66.    ELSE  BEGIN //2         
  67.     SET res= LetterAddAddr(Letter,komu, typadr, FALSE);
  68.     IF res<>0 THEN
  69.      begin
  70.       CALL log_write("chyba adresßta "+int2str(res));
  71.       CALL mailerr(res); 
  72.      end;
  73.     ELSE  BEGIN //3           
  74.      SET res= LetterSend(Letter);
  75.      IF res<>0 THEN  BEGIN  CALL log_write("chyba p°i odesφlßnφ poÜtou "+int2str(res)); CALL mailerr(res); END;
  76.      END IF;  //4
  77.     END;  END IF;  //3
  78.    END;  END IF;  //2
  79.   END;  END IF;  //01
  80.    CALL CloseWBMail;
  81.  
  82.  END;  END IF;  //1
  83.  END;  END IF;  //0
  84.  
  85. END
  86.