else Info_box("UPOZORN╠N═", "Nelze provΘst p°epoΦet dealersk²ch cen podle zadan²ch koeficient∙, dosud nenφ cenφk napln∞n,"#10#13" vra¥te se k tomuto kroku po napln∞nφ Cenφku");
if jarec>-1 then moje:=OBCHODNICI[jarec].ID_OBCHODNIKA;
Rec_cnt(Obchodni_partneri,pocet);
if pocet>0 then
begin
case vsichni of
0: begin
query:="SELECT * FROM OBCHODNI_PARTNERI WHERE deal_sk="+ int2str(dsk);
if open_SQL_cursor(curs,query) then Signalize
else Rec_cnt(curs, pocet2);
if pocet2>0 then Open_view("*obch_partneri", curs, AUTO_CURSOR, 0, 0,nil) else Info_box("UPOZORN╠N═"," Pro zvolenou dealerskou skupinu neni seznamu ₧ßdn² zßkaznφk.");
query:="SELECT * FROM OBCHODNI_PARTNERI WHERE nazev1.=."+""""+findcomp+"""";
if open_SQL_cursor(curs,query) then Signalize
else Rec_cnt(curs, pocet2);
if pocet2>0 then Open_view("*obch_partneri", curs, AUTO_CURSOR, 0, 0,nil) else Info_box("UPOZORN╠N═"," Nßzev ₧ßdnΘho zßkaznφka neobsahuje zapsan² text.");
end;
3: begin
query:="SELECT * FROM OBCHODNI_PARTNERI WHERE typ="+ int2str(tuz);
if open_SQL_cursor(curs,query) then Signalize
else Rec_cnt(curs, pocet2);
if pocet2>0 then Open_view("*obch_partneri", curs, AUTO_CURSOR, 0, 0,nil) else Info_box("UPOZORN╠N═"," Pro zvolen² typ u₧ivatele neni seznamu ₧ßdn² zßkaznφk.");
query:="SELECT Obchodni_partneri.*,S_deal_sk.deal_skupina,S_typ_uziv.nazev_typ FROM Obchodni_partneri, S_deal_sk, S_typ_uziv WHERE S_typ_uziv.id_typ=Obchodni_partneri.typ AND S_deal_sk.deal_id=Obchodni_partneri.deal_sk AND deal_sk="+ int2str(dsk);
if open_SQL_cursor(curs,query) then Signalize
else
begin
Rec_cnt(curs, pocet2);
if pocet2>0 then Print_view("*T2_seznam_zak", curs, -1, -1) else Info_box("UPOZORN╠N═"," Pro zvolenou dealerskou skupinu neni seznamu ₧ßdn² zßkaznφk.");
query:="SELECT Obchodni_partneri.*,S_deal_sk.deal_skupina,S_typ_uziv.nazev_typ FROM Obchodni_partneri, S_deal_sk, S_typ_uziv WHERE S_typ_uziv.id_typ=Obchodni_partneri.typ AND S_deal_sk.deal_id=Obchodni_partneri.deal_sk AND nazev1.=."+""""+findcomp+"""";
if open_SQL_cursor(curs,query) then Signalize
else
begin
Rec_cnt(curs, pocet2);
if pocet2>0 then Print_view("*T2_seznam_zak", curs, -1, -1) else Info_box("UPOZORN╠N═"," Nßzev ₧ßdnΘho zßkaznφka neobsahuje zapsan² text.");
close_cursor(curs);
end;
end;
3: begin
query:="SELECT Obchodni_partneri.*,S_deal_sk.deal_skupina,S_typ_uziv.nazev_typ FROM Obchodni_partneri, S_deal_sk, S_typ_uziv WHERE S_typ_uziv.id_typ=Obchodni_partneri.typ AND S_deal_sk.deal_id=Obchodni_partneri.deal_sk AND typ="+ int2str(tuz);
if open_SQL_cursor(curs,query) then Signalize
else
begin
Rec_cnt(curs, pocet2);
if pocet2>0 then Print_view("*T2_seznam_zak", curs, -1, -1) else Info_box("UPOZORN╠N═"," Pro zvolen² typ u₧ivatele neni seznamu ₧ßdn² zßkaznφk.");
if statnumdat=2 then podminka:="AND (datum>="+date2str(sdat_od,1)+") AND (datum<="+date2str(sdat_do,1)+")"
else podminka:="";
case statnum of
1:
begin
strinsert("SELECT Obchodni_partneri.nazev1,Obj_header.id_org,SUM(Obj_header.sum_cena) AS cena,COUNT(Obj_header.id_dobj) AS POCET,MAX(Obj_header.datum) AS POSLEDNI FROM Obchodni_partneri, Obj_header WHERE Obj_header.id_org=Obchodni_partneri.id AND (Obj_header.potvrzena=true AND Obchodni_partneri.intr_user<>"""") ", query, 1);
strinsert(podminka,query,strlength(query));
strinsert( " GROUP BY Obj_header.ID_ORG ORDER BY cena DESC",query,strlength(query));
end;
11:
begin
strinsert("SELECT Obchodnici.prijmeni,Obchodni_partneri.id_obchodnika,SUM(Obj_header.sum_cena) AS cena,COUNT(Obj_header.id_dobj) AS POCET,MAX(Obj_header.datum) AS POSLEDNI FROM Obchodni_partneri, Obj_header, Obchodnici WHERE Obchodni_partneri.id_obchodnika=Obchodnici.id_obchodnika AND Obj_header.id_org=Obchodni_partneri.id AND (Obj_header.potvrzena=true AND Obchodni_partneri.intr_user<>"""") ", query, 1);
strinsert(podminka,query,strlength(query));
strinsert( " GROUP BY Obchodni_partneri.id_obchodnika ORDER BY cena DESC",query,strlength(query));
end;
2:
begin
strinsert("SELECT Obj_polozky.id_cnk,SUM(Obj_polozky.cena_summn) AS cena,cenik.nazev_zbozi,cenik.kod_zbozi,COUNT(Obj_polozky.id_dobj) AS POCET_OBJ,SUM(Obj_polozky.mnozstvi) AS MNOZ,MAX(Obj_header.datum) AS POSLEDNI FROM Obj_polozky, cenik, Obj_header, Obchodni_partneri WHERE Obchodni_partneri.id=Obj_header.id_org AND Obj_header.id_dobj=Obj_polozky.id_dobj AND Obj_polozky.id_cnk=cenik.id_cenik AND (Obj_header.potvrzena=true AND Obchodni_partneri.intr_user<>"""") ", query, 1);
strinsert(podminka,query,strlength(query));
strinsert(" GROUP BY Obj_polozky.id_cnk ORDER BY cena DESC", query, strlength(query));
if pocetlct>1 then Begin pomtr:=pocetlct; if pocetlct >= 1000 then sh:="SQL server s neomezenou licencφ" else sh:="SQL server s "+int2str(pocetlct)+" licencemi"; end
else
begin //1
cojeto2 :=cojeto mod 65536;
if odd(cojeto2) then
begin //2
dent := get_expir_state();
if dent>60 then begin pomtr:=2; sh:="Personßlnφ databßze"; end else begin pomtr:=0; sh:="Personßlnφ databßze - TRIAL!" end;
if not Open_sql_parts(curs, "*", "default_hodnoty","", "") then Info_box("upozorn∞nφ", "Nejsou zadßny default hodnoty(odd∞lenφ) - nelze zalo₧it nov² zßznam")
else
begin //1
Rec_cnt(curs, limit);
close_cursor(curs);
if limit>0 then Open_view("*novy_obch",NO_REDIR,MODAL_VIEW,-1,0,nil);
if Open_sql_parts(curs, "*", "default_hodnoty","", "") then Info_box("upozorn∞nφ", "Nejsou zadßny default hodnoty (typ u₧ivatele, dealerskß skupina, nebo obchodnφk) - nelze zalo₧it nov² zßznam")
//otev°enφ prom∞nnΘho kurzoru curs a zjiÜt∞nφ zda metodu lze zruÜit
podminka:="dph="+int2str(id);
if not Open_sql_parts(curs, "*", "Cenik", podminka, "") then Rec_cnt(curs,pocet);
if pocet>0 then ok:=YesNo_box("UPOZORN╠N═", "V Cenφku existuje odkaz na mazanΘ DPH,"#10"chcete oznaΦenΘ DPH opravdu smazat? (bude nahrazen defaultnφm)")
else ok:=true;
if ok then
begin
//smazßnφ zßznamu v tabulce
if id<>default_hodnoty[0].DPH then
begin
for i:=0 to pocet-1 do curs[i].dph:=default_hodnoty[0].dph;
podminka:="dph="+int2str(id)+ " AND uc_rok=year(today)";
if Open_sql_parts(curs1, "*", "S_DPH", podminka, "") then Signalize
else Delete_all_records(curs1);
close_cursor(curs1)
end
else info_box("UPOZORN╠N═", "mazanΘ DPH je defaultnφ, nelze smazat") ;
end;
close_cursor(curs);
end
else
begin
podminka:="dph="+int2str(id)+ " AND uc_rok="+ int2str(uc_rok);
if Open_sql_parts(curs1, "*", "S_DPH", podminka, "") then Signalize
//otev°enφ prom∞nnΘho kurzoru curs a zjiÜt∞nφ zda metodu lze zruÜit
podminka:="typ="+int2str(id);
if not Open_sql_parts(curs, "*", "Obchodni_partneri", podminka, "") then Rec_cnt(curs,pocet);
if pocet>0 then ok:=YesNo_box("UPOZORN╠N═", "Vybran² typ u₧ivatele je pou₧it v tabulce Obchodnφch partner∙, "#10" chcete oznaΦen² typ u₧ivatele opravdu smazat?"#10" (bude nahrazen defaultnφm)")
else ok:=true;
if ok then
begin
//smazßnφ zßznamu v tabulce
if id<>default_hodnoty[0].TYP_UZIV then
begin
for i:=0 to pocet-1 do curs[i].typ:=default_hodnoty[0].TYP_UZIV;
u := id;
irec := Look_up(S_typ_uziv,"id_typ",u);
if irec<>-1 then if delete(S_typ_uziv,irec) then Signalize;
end
else info_box("UPOZORN╠N═", "Vybran² typ u₧ivatele je defaultnφ, nelze smazat") ;
//otev°enφ prom∞nnΘho kurzoru curs a zjiÜt∞nφ zda metodu lze zruÜit
podminka:="deal_sk="+int2str(id);
if not Open_sql_parts(curs, "*", "Obchodni_partneri", podminka, "") then Rec_cnt(curs,pocet);
if pocet>0 then ok:=YesNo_box("UPOZORN╠N═", "Tato dealerskß skupina obsahuje obchodnφ partnery,"#10" chcete oznaΦenou dealerskou skupinu opravdu smazat?"#10"- obchodnφ partne°i budou za°azeni do defaultnφ dealerskΘ skupiny")
else ok:=true;
if ok then
begin
//smazßnφ zßznamu v tabulce
if id<>default_hodnoty[0].deal_sk then
begin
for i:=0 to pocet-1 do curs[i].deal_sk:=default_hodnoty[0].deal_sk;
u := id;
irec := Look_up(S_deal_sk,"deal_id",u);
if irec<>-1 then if delete(S_deal_sk,irec) then Signalize;
end
else info_box("UPOZORN╠N═", "RuÜenß dealerskß skupina je defaultnφ, nelze ji smazat") ;
//otev°enφ prom∞nnΘho kurzoru curs a zjiÜt∞nφ zda metodu lze zruÜit
if (uroven<>noneinteger) then podminka:="uroven="+int2str(uroven)
else podminka:="uroven=NULL";
if not Open_sql_parts(curs, "*", "S_zbozi_sk", podminka, "") then Rec_cnt(curs,pocet);
close_cursor(curs);
if pocet>0 then ok:=YesNo_box("UPOZORN╠N═", "V tabulce Skupin zbo₧φ existujφ vybranΘ urovn∞ struktury vno°enφ,"#10" chcete oznaΦenou polo₧ku ·rove≥ opravdu smazat?")
else ok:=true;
if ok then
begin
//otev°enφ prom∞nnΘho kurzoru curs a zruÜenφ vÜech zßznam∙ vácursoru curs
if not Open_sql_parts(curs, "*", "kod_structura", podminka, "") then Delete_all_records(curs);
//otev°enφ prom∞nnΘho kurzoru curs a zjiÜt∞nφ zda metodu lze zruÜit
close_view(id);
podminka:="rabat="+int2str(metoda);
if not Open_sql_parts(curs, "*", "S_zbozi_sk", podminka, "") then Rec_cnt(curs,pocet);
close_cursor(curs);
if pocet>0 then ok:=YesNo_box("UPOZORN╠N═", "V tabulce Skupin zbo₧φ je odkaz na vybranou metodu rabat∙,"#10" chcete oznaΦenou polo₧ku metody opravdu smazat?")
else ok:=true;
if ok then
begin
podminka:="metoda="+int2str(metoda);
if not Open_sql_parts(curs, "*", "rabat", podminka, "") then Rec_cnt(curs,pocet0);
close_cursor(curs);
podminka:="metoda="+int2str(metoda)+" AND nad_mnoz="+int2str(mnoz);
//otev°enφ prom∞nnΘho kurzoru curs a zruÜenφ vÜech zßznam∙ vácursoru curs
if not Open_sql_parts(curs, "*", "rabat", podminka, "") then
begin
/* if ((metoda=default_hodnoty[0].RABATOVA_METODA) AND (pocet0<2)) then info_box("UPOZORN╠N═", "RuÜenß RABATOVA METODA je defaultnφ, nelze ji celou smazat")
else
begin
*/ Delete_all_records(curs);
if (pocet0<2) then
begin
u := METODA;
irec := Look_up(Rabat_header,"metoda",u);
if irec<>-1 then if delete(Rabat_header,irec) then Signalize;
end;
// end;
close_cursor(curs);
end;
/* if not Find_object("Rabat", CATEG_TABLE, cislo_tab)
then Free_deleted(cislo_tab);
if not Find_object("Rabat_header", CATEG_TABLE, cislo_tab)
then Free_deleted(cislo_tab);
*/ end;
//otev°enφ prom∞nnΘho kurzoru curs a zruÜenφ vÜech zßznam∙ vácursoru curs
podminka:="rabat.metoda=rabat_header.metoda AND metoda="+int2str(metoda);
if not Open_sql_parts(curs, "rabat.*,rabat_header.kod", "rabat, rabat_header", podminka, "") then Rec_cnt(curs,pocet);
if pocet>0 then Open_view("*cis_rabat",curs,AUTO_CURSOR,0,0,nil) else close_cursor(curs);
if Open_SQL_cursor(c,"select id_skupiny from S_zbozi_sk where vybrano=TRUE") then Signalize
else Rec_cnt(c,limit);
u:=id_cenik;
crec := Look_up(cenik,"id_cenik",u);
if limit=1 then
begin
if crec<>-1 then
cenik[crec].skupina_zbozi:=c[0].id_skupiny;
zarazeno:=true;
end
else if limit<1 then info_box("upozorn∞nφ" , "nebyla vybrßna ₧ßdnß skupina") else info_box("upozorn∞nφ" , "vybrali jste vφce skupin, za°adit lze pouze do 1");
close_cursor(c);
if nova=0 then Open_view("*nova_pol_cen",NO_REDIR,MODAL_VIEW,-crec,0,nil)
if Open_sql_parts(curs, "*", "default_hodnoty","", "") then Info_box("upozorn∞nφ", "Nejsou zadßny default hodnoty (DPH, rab. metoda)- nelze zalo₧it nov² zßznam")
else
begin //1
Rec_cnt(curs, limit);
close_cursor(curs);
if limit>0 then
begin //2a
if sys_par[0].vyrobci then
begin
if Open_SQL_cursor(vyrdef,"SELECT id FROM Vyrobci") then Signalize
else
begin //2b
Rec_cnt(vyrdef,pocet);
if pocet>0 then pomvyrobce:=vyrdef[0].id ;
close_cursor(vyrdef);
end; //2b
end;
if ((pocet>0) AND (pomvyrobce<>NONEINTEGER)) OR NOT sys_par[0].vyrobci then
begin //2b
pom_def:=default_hodnoty[0].DPH;
if pom_def<>NONEINTEGER then
begin //3
zarazeno:=false;
irec:=Insert(cenik);
// p_nova_c:=irec;
pom_id :=sys_par[0].id_last_c+1;
cenik[irec].min_cena:=0.0;
cenik[irec].id_cenik:=pom_id;
cenik[irec].novinka:=true;
cenik[irec].sleva:=false;
cenik[irec].top:=false;
cenik[irec].skladem:=true;
if sys_par[0].vyrobci then cenik[irec].vyrobce:=pomvyrobce;
cenik[irec].dph:=default_hodnoty[0].dph;
u:=default_hodnoty[0].jednotka;
jedrec := Look_up(Jednotka,"idj",u);
if jedrec<>-1 then pjednotka:=Jednotka[jedrec].nazev
else
begin
pjednotka:="ks";
Info_box("UPOZORN╠N═", "V tabulce jednotek nebyla nalezena Default jednotka");