Title : Goods Sending Entries
Toolbars
call BrowseEditDelete()
call CloseForm(True)
call CloseForm(False)
Buttons
Fields
(AU_GOOD.CODE)
(AU_GOOD.TITLE)
(AU_UNITMEAS.CODE)
(AU_KE_GOOD.VAT)
(AU_KE_GOOD.AMOUNT)
(AU_KE_GOOD.QUANT)
(AU_KE_GOOD.PRICE)
(AU_KE_GOOD.DISCOUNT)
(AU_KE_GOOD.VAT_PC)
Total Net Value (AU_EVENT.AMOUNT)
VAT (AU_EVENT.VAT)
Total (AU_EVENT.TOTAL_AMOUNT)
Currency (AU_CURRENCY.CCODE)
Payment Scenario (AU_COVER_SCEN.DESCR)
Customer (AU_BUSINESS.TITLE)
Event Type (AU_T_EVENT.DESCR)
Date (AU_EVENT.DATE)
Number (AU_EVENT.NUMBER)
From Warehouse (AU_WAREHOUSE.DESCR)
Budget (AU_EVENT.BUDGET_FLAG)
AutoScript
lib
proc Form_Start()
f = TopForm()
ft = FormTask(f)
p = PByName(f,"AU_EVENT")
t = TByName(p,"AU_EVENT")
pg = PByName(f,"AU_KE_GOOD")
tg = TByName(pg,"AU_KE_GOOD")
call ProtectOnPaste(f,"AU_EVENT","AU_PERIOD")
{......................set fixed values for this minimal parastatiko!!!........}
if (ft = ptAppend) then
str = SelectFrom("SELECT AU_T_EVENT, DESCR, CODE FROM AU_T_EVENT WHERE (CODE='AU_INVOICE')")
tevent = GetSQLSelectItem(str,1)
tevent_descr = GetSQLSelectItem(str,2)
tevent_code = GetSQLSelectItem(str,3)
pevent = __params[6] {.......παραγγελια απο πελατη}
call TEdit(t)
call TSetFld(t,"AU_T_EVENT",tevent)
call TSetFld(t,"F_AU_T_EVENT_CODE",tevent_code)
call TSetFld(t,"F_AU_T_EVENT_DESCR",tevent_descr)
call TSetFld(t,"EVENT_E",pevent)
pros_id = LookUpId("AU_EVENT",pevent,"BUSINESS_TO")
pros_d = LookUpId("AU_BUSINESS",pros_id,"TITLE")
call TSetFld(t,"BUSINESS_TO",pros_id)
call TSetFld(t,"F_BUSINESS_TO_TITLE",pros_d)
call TPost(t)
start_sql "*" "KOSMOS"
SELECT * FROM AU_KE_GOOD
WHERE (AU_EVENT = :EV)
end_sql
q = QueryByName()
call TSetParam(q,"EV",pevent)
call TExecute(q)
count = TRecordCount(q)
call TFirst(q)
for i = 1 to count
eidh0 = TGetFld(q,"AU_GOOD")
eidh0_d = LookUpId("AU_GOOD",eidh0,"TITLE")
eidh0_c = LookUpId("AU_GOOD",eidh0,"CODE")
posot = TGetFld(q,"QUANT")
price = TGetFld(q,"PRICE")
amount = TGetFld(q,"AMOUNT")
mm = TGetFld(q,"AU_UNITMEAS")
mm_c = LookUpId("AU_UNITMEAS",mm,"CODE")
call TAppend(tg)
call TSetFld(tg,"AU_GOOD",eidh0)
call TSetFld(tg,"F_AU_GOOD_TITLE",eidh0_d)
call TSetFld(tg,"F_AU_GOOD_CODE",eidh0_c)
call TSetFld(tg,"QUANT",posot)
call TSetFld(tg,"PRICE",price)
call TSetFld(tg,"AMOUNT",amount)
call TSetFld(tg,"AU_UNITMEAS",mm)
call TSetFld(tg,"F_AU_UNITMEAS_CODE",mm_c)
call TPost(tg)
call TNext(q)
next
call FreeEmbSQL(q)
call ReLoadEditFields(f)
endif
call SetCaption("Goods Sending")
{......................................selection lists..............}
start_sql "DESCR_SEL" "KOSMOS"
SELECT AU_T_EVENT.DESCR, AU_T_EVENT.AU_T_EVENT
FROM AU_KEVENT INNER JOIN AU_T_EVENT
ON AU_KEVENT.AU_KEVENT = AU_T_EVENT.KEVENT1
WHERE (AU_T_EVENT.KEVENT1=2)
AND ((AU_T_EVENT.MOVE_VALUES_FLAG = '1') OR (AU_T_EVENT.MOVE_GOODS_FLAG = '1'))
AND (AU_T_EVENT.DESCR LIKE :E & '%')
ORDER BY AU_T_EVENT.DESCR
end_sql
start_sql "GOOD_SEL_CODE" "KOSMOS"
SELECT AU_GOOD.CODE, AU_GOOD.TITLE, AU_GOOD.AU_GOOD
FROM AU_GOOD
WHERE (AU_GOOD.CODE LIKE :E & '%')
ORDER BY AU_GOOD.CODE
end_sql
start_sql "GOOD_SEL_TITLE" "KOSMOS"
SELECT AU_GOOD.TITLE, AU_GOOD.CODE, AU_GOOD.AU_GOOD
FROM AU_GOOD
WHERE (AU_GOOD.TITLE LIKE :E & '%')
ORDER BY AU_GOOD.TITLE
end_sql
end
proc Select_GOOD_SEL_TITLE_Params()
s = GetEditedText()
call ParamsEmbSQL("GOOD_SEL_TITLE";s)
end
proc Select_GOOD_SEL_CODE_Params()
s = GetEditedText()
call ParamsEmbSQL("GOOD_SEL_CODE";s)
end
proc Select_DESCR_SEL_Params()
s = GetEditedText()
call ParamsEmbSQL("DESCR_SEL";s)
end
proc posot_exit()
line = TRecNo(tg)
line = line - 1
posot = TGetFld(tg,"QUANT")
timi = TGetFld(tg,"PRICE")
ekpt = TGetFld(tg,"DISCOUNT")
vat_pc = TGetFld(tg,"VAT_PC")
axia = posot*timi - posot * timi*ekpt/100
vat = axia*vat_pc/100
amount = axia
call TEdit(tg)
call TSetFld(tg,"AMOUNT",amount)
call TSetFld(tg,"VAT",vat)
call TPost(tg)
call ReLoadEditFields(f;pg;line)
call ReLoadEditFields(f)
end
{============================== get_amount ================================}
fun get_amount()
rcount = TRecordCount(tg)
recno = TRecNo(tg)
total = 0
call TFirst(tg)
for i = 1 to rcount
am = TGetFld(tg,"AMOUNT")
total = total + am
call TNext(tg)
next
call TGotoCurRow(tg,recno)
result = total
end
{============================== get_vat ================================}
fun get_vat()
rcount = TRecordCount(tg)
recno = TRecNo(tg)
total = 0
call TFirst(tg)
for i = 1 to rcount
am = TGetFld(tg,"VAT")
total = total + am
call TNext(tg)
next
call TGotoCurRow(tg,recno)
result = total
end
{============================== get_total ================================}
fun get_total()
am = TGetFld(t,"AMOUNT")
vat = TGetFld(t,"VAT")
result = am + vat
end
{============================== Form_BeforeClose ==========================}
fun Form_BeforeClose()
result = 1
return
f = TopForm()
fname = GetResName(f)
tev = TGetFld(t;"AU_T_EVENT")
diak = LookUp("AU_T_EVENT";"AU_T_EVENT";tev;"DIAK_AXION";"")
rcount = TRecordCount(tg)
call TFirst(tg)
for i = 1 to rcount
eid = TGetFld(tg;"AU_GOOD")
pos = TGetFld(tg;"QUANT")
axi = TGetFld(tg;"AMOUNT")
if (eid = 0) then
call message("Move without Good!")
result = 0
return
endif
if (pos = 0) then
call message("Move without Quantity!")
result = 0
return
endif
if (diak = 1) then
if (axi = 0) then
call message("Move without Amount!")
result = 0
return
endif
endif
call TNext(t)
next
endif
end