Objekt TKAPOrder: Porovnání verzí

Z K.A.P.
Skočit na navigaciSkočit na vyhledávání
m
m
Řádek 64: Řádek 64:
 
! Funkce !! Popis  
 
! Funkce !! Popis  
 
|-valign=top
 
|-valign=top
|''constructor Create'' ||vytvořené objekty nezapomeňte uvolnit pomocí metody Free  
+
|''constructor Create(AktualizaceCen: Boolean)'' ||Parametr určuje, zda mají být ceny v objednávce počítány automaticky se zohledněním individuálních cen odběratele nebo budou určeny uživatelským skriptem při přidávání jednotlivých položek. vytvořené objekty nezapomeňte uvolnit pomocí metody Free  
 
|-valign=top
 
|-valign=top
|''function IndividualniCena(CenSkupina, AltCenSkupina, KodKarty: String; TypCeny, TypDokladu: Byte; Datum: TDateTime; PocetMJ: Double; var Cena: Double; var CenaSDPH: Double): Boolean'' ||Načte skladovou kartu dle KodKarty z tabulek SKLADKAR a SKLADZAS a vyhodnotí individuální cenu CenSkupina dle zadaných podmínek. TypCeny odpovídá definici cenových pásem ve skladovém programu a používá se pro určení, zda individuální cena je platná pro dané cenové pásmo. Typ dokladu je číslo typu dokladu. Pokud má hodnotu 0, tak se uplatní jen individuální ceny, které nejsou závislé na typu dokladu. Pokud parametr Datum nastavíte na hodnotu 0 nebo v systému nemáte zapnuté sledování individuálních cen na základě data dokladu, tak se použije dnešní datum. Parametr PocetMJ se uplatňuje jen u individuálních cen, které jsou závislé na množství. Parametr Cena musí být před voláním funkce inicializován, protože Cena zároveň funguje jako vstupní parametr (použije se pro individuální ceny typu "běžná cena"). Parametr CenaSDPH je nastaven i v případě, že individuální cena není vyhodnocena (čili výsledek funkce je false).
+
|''function SetCustomer(ICO: String): Boolean'' ||Podle údaje IČO dohledá zákazníka a naplní hlavičku objednávky podle fakturačního místa z adresy. Pokud odběratel není nalezen, tak je odběratel v objednávce vynulován. Podle zákazníka jsou určeny i individuální ceny pro případ automatické aktualizace cen. Funkce vrací true, pokud je zákazník nalezen.
 
|-valign=top
 
|-valign=top
|''function PasmoPCNaTypCeny(PasmoPC: byte): byte'' ||Funkce vrací hodnotu typu ceny pro prodejní cenová pásma (prodejní ceny 1 až 40). Typ ceny má tyto hodnoty: 0,1:PC1, 2:PC2, 3:PC3, 4:PC4, 5:PC5, 6:PC6, 7:NC, 8:Doh.NC, 9:Prům.NC, 10 až 18:PC7 až PC15, 19: Spec.NC, 20 až 44: PC16 až PC40
+
|''function LoadOrderHeaderFromDataset(Dataset: TDataset): Boolean'' ||Funkce načte z tabulky určené parametrem Dataset hlavičku objednávky. Struktura vstupní tabulky (jména polí) musí odpovídat struktuře tabulky SkladOBJ ze skladového programu. Pokud tabulka obsahuje pole MEMOA nebo MEMOB, tak jsou informace z tohoto pole přeneseny do vlastností MemoA, popř. MemoB (typu StringList). Pole EMAIL, RESPPERSON, PHONE, GUID, FAX, MOBILE, CONTACTEMAIL, SENDINFO jsou uložena ve formátu JménoPole=Hodnota do údaje MemoI.
 
|-valign=top
 
|-valign=top
 
|''function AktivniUrovneDPH: byte'' ||Funkce vrací počet aktivních úrovní DPH
 
|''function AktivniUrovneDPH: byte'' ||Funkce vrací počet aktivních úrovní DPH
 
|}
 
|}

Verze z 11. 2. 2015, 19:28

Pomocí objektu TKAPOrder lze pracovat s požadavky (čili objednávkami zákazníků). Objekt je dostupný pouze ve skladovém programu. Při vytvoření nové instance objektu se otevřou tabulky SKLADKAR, SKLADZAS a MEMO a pomocí těchto tabulek pak program zjišťuje požadované informace. Doporučujeme proto nevytvářet současně mnoho instancí třídy TKAPOrder a v případě, že se objekty již nevyužívají, tak je uvolnit.

Objekt TKAPOrder

TKAPOrder = class
   property Sklad: word;
   property Prijem: Boolean;
   property CisloObjednavky: longint;
   property Pozadovano: TDateTime;
   property Zalozeno: TDateTime;
   property Podnik: byte;
   property Jmeno: String;
   property Jmeno2: String;
   property Ulice: String;
   property Mesto: String;
   property Telefon: String;
   property PSC: String;
   property ICO: String;
   property DIC: String;
   property Radek1: String;
   property Radek2: String;
   property Osoba: String;
   property Uhrada: byte;
   property Prevedeno: byte;
   property Doprava: byte;
   property Zakazka: String;
   property Vystavil: String;
   property CelkemBezDPH: Double;
   property CelkemSDPH : Double;
   property ProcVykrKc    : Double;
   property ProcVykrytiMj : Double;
   property Sleva         : Double;
   property MaxDatumDodani: TDateTime;
   property PocetPalet    : Double;
   property CelkHmotnost  : Double;
   property ExtCisloObj   : String;
   property CasDodani     : String;
   property TypDokladuSkl : byte;
   property PASIdObj      : longint;
   property IndivCena     : String;
   property PocetTisku    : byte;
   property PocetOprav    : byte;
   property Priznaky      : byte;
   property Mena          : String;
   property Kurz          : Double;
   property Priznaky2     : byte;
   property Priznaky3     : byte;
   property MemoA         : TStringList;
   property MemoB         : TStringList;
   property MemoI         : TStringList;
   property LastError: String;
   constructor Create(AktualizaceCen: Boolean);
   destructor Destroy;
   function SetCustomer(ICO: String): Boolean;
   function LoadOrderHeaderFromDataset(Dataset: TDataset): Boolean;
   function LoadOrderItemsFromDataset(Dataset: TDataset; var ChybaNaRadku: longint): Boolean;
   procedure ClearItems;
   function AddOrderItem(Kod: String; Pocet, PocetBal: Double; AutoPocetBal: Boolean; Cena: Double; Identifikace: String): Boolean;
   function SaveNewOrder: Boolean;
end;
Funkce Popis
constructor Create(AktualizaceCen: Boolean) Parametr určuje, zda mají být ceny v objednávce počítány automaticky se zohledněním individuálních cen odběratele nebo budou určeny uživatelským skriptem při přidávání jednotlivých položek. vytvořené objekty nezapomeňte uvolnit pomocí metody Free
function SetCustomer(ICO: String): Boolean Podle údaje IČO dohledá zákazníka a naplní hlavičku objednávky podle fakturačního místa z adresy. Pokud odběratel není nalezen, tak je odběratel v objednávce vynulován. Podle zákazníka jsou určeny i individuální ceny pro případ automatické aktualizace cen. Funkce vrací true, pokud je zákazník nalezen.
function LoadOrderHeaderFromDataset(Dataset: TDataset): Boolean Funkce načte z tabulky určené parametrem Dataset hlavičku objednávky. Struktura vstupní tabulky (jména polí) musí odpovídat struktuře tabulky SkladOBJ ze skladového programu. Pokud tabulka obsahuje pole MEMOA nebo MEMOB, tak jsou informace z tohoto pole přeneseny do vlastností MemoA, popř. MemoB (typu StringList). Pole EMAIL, RESPPERSON, PHONE, GUID, FAX, MOBILE, CONTACTEMAIL, SENDINFO jsou uložena ve formátu JménoPole=Hodnota do údaje MemoI.
function AktivniUrovneDPH: byte Funkce vrací počet aktivních úrovní DPH