| Název | Popis | Datový typ |
|---|---|---|
| AOrgType | Char(1) |
BEGIN
mOrgTypeN = CAST(:AOrgType as integer);
IF (mOrgTypeN = 0) THEN
SELECT OrganisationType from GlobData INTO mOrgTypeN;
IF (mOrgTypeN > 0) then BEGIN
mOrgTypeC = CAST(mOrgTypeN as char);
/*Unikátnost definice se testuje podle kódu, aby se nemnožily definice */
FOR SELECT H.Code, H.ID FROM MasterWageClosingDefs H WHERE H.ForOrgTypes containing :mOrgTypeC INTO mCode, mOID DO
BEGIN
SELECT count(*) FROM WageClosingDefs A WHERE A.Code = :mCode INTO mCount;
IF (mCount = 0) THEN
BEGIN
/*Definice se nenašla pod daným kódem, ale může v datech existovat pod stejným ID.
To se může tak, že se u dodávané definice změnil kód. Takovou definici také nepřidáme, protože by to vyvolalo chybu porušení integrity díky duplikování ID.*/
SELECT count(*) FROM WageClosingDefs A WHERE A.ID = :mOID INTO mCount;
END
IF (mCount = 0) THEN
BEGIN
FOR SELECT M.ID, M.Code, M.Hidden, M.Name, M.Periodicity, M.CalcChart_ID, M.ToAccounting, M.AccPresetDef_ID, M.SplitByOperations,
M.OperationCodes, M.ToPaymentOrder, M.MinusSign, M.PaymentDef_ID, M.DocQueue_ID, M.CorrectedBy_ID, M.CreatedBy_ID, M.Rounding,
M.CorrectionType, M.CorrectionExpr, M.OnlyEvalExpression
FROM MasterWageClosingDefs M
WHERE (M.ID = :mOID) and
((EXISTS (SELECT acc.ID FROM AccPresetDefs acc WHERE acc.ID = M.AccPresetDef_ID)) /* nebudu přidávat takové definice, které se odkazují na neexistující předkontace */
or (M.AccPresetDef_ID is null))
INTO :m_ID, :m_Code, :m_Hidden, :m_Name, :m_Periodicity, :m_CalcChart_ID, :m_ToAccounting, :m_AccPresetDef_ID, :m_SplitByOperations,
:m_OperationCodes, :m_ToPaymentOrder, :m_MinusSign, :m_PaymentDef_ID, :m_DocQueue_ID, :m_CorrectedBy_ID, :m_CreatedBy_ID, :m_Rounding,
:m_CorrectionType, :m_CorrectionExpr, :m_OnlyEvalExpression
DO BEGIN
insert into WageClosingDefs (ID, Code, Hidden, Name, Periodicity, CalcChart_ID, ToAccounting, AccPresetDef_ID, SplitByOperations,
OperationCodes, ToPaymentOrder, MinusSign, PaymentDef_ID, DocQueue_ID, CorrectedBy_ID, CreatedBy_ID, Rounding, CorrectionType, CorrectionExpr, OnlyEvalExpression)
values (:m_ID, :m_Code, :m_Hidden, :m_Name, :m_Periodicity, :m_CalcChart_ID, :m_ToAccounting, :m_AccPresetDef_ID, :m_SplitByOperations,
:m_OperationCodes, :m_ToPaymentOrder, :m_MinusSign, :m_PaymentDef_ID, :m_DocQueue_ID, :m_CorrectedBy_ID, :m_CreatedBy_ID, :m_Rounding, :m_CorrectionType, :m_CorrectionExpr, :m_OnlyEvalExpression);
END
END
END
END
END;Generated by ABRA Software a.s. 27.10.2021 16:34:36