HTML>
//การสรุปยอดขายสินค้าตามเดือนและปี procedure ports01 ans=1 do while ans=1 set color to w/bg+ cls set color to w/b @ 1,2 clear to 3,77 set color to w/gr @5,2 clear to 19,77 set color to w/rb+ @ 21,2 clear to 23,77 sele 1; use customer sele 2; use product sele 3; use saledet sele 4; use sale op=alert("เลือกผลลัพธ์ของรายงาน",{"จอภาพ","เครื่องพิมพ์","ยกเลิก"}) if op=1 pg=19 setr=8 elseif op=2 @ 10,15 say "กรุณาใส่เดือนและปีที่ต้องการ :" pg=45 setr=8 set device to printer else close all return endif r=setr page=1 sum=0 set century on _month=" " _year=" " @ 2,66 say "page :"+ltrim(str(page)) set color to b/gr,/w @ 2,10 say "รายงานสรุปการขายประจำเดือน :" get _month @ 2,43 say "ปี :" get _year read @ 2,39 say _month @ 2,48 say _year @ 5,2 say repl("*",75) @ 6,2 say rtrim ("รหัสขาย ") @ 6,12 say rtrim ("ชื่อลูกค้า ") @ 6,25 say rtrim ("รหัสสินค้า") @ 6,39 say rtrim ("ชื่อสินค้า") @ 6,56 say rtrim ("ราคา") @ 6,62 say rtrim ("จำนวน ") @ 6,70 say rtrim("รวมเงิน ") @ 7,2 say repl ("*",75) do while !eof() .and. op!=3 locate for month(date_sale)=val(_month) .and.; year(date_sale)=val(_year) if !found() @ 5,2 clear to 19,77 @ 11,10 to 13,65 @ 12,15 say "ไม่ปรากฎเดือนที่ขายสินค้า"+_month+ "ในแฟ้มข้อมูล" inkey(0);exit endif do while found() tot=0 _saleid=saleid _custid=custid @ r,2 say ltrim(str(saleid)) sele 1 locate for custid=_custid if found() @ r,7 say rtrim(custname) else @ r,8 say "ลูกค้าขาจร" endif sele 3 locate for saleid=_saleid do while found() _proid=proid @r,27 say ltrim(str(proid)) sele 2 locate for proid=_proid if found() _price=price @ r,32 say rtrim(proname) @ r,49 say price endif sele 3 @ r,65 say ltrim(str(quant)) tot=_price*quant sum=sum+tot @ r,69 say tot pict "99,999.99" skip r++ locate rest for saleid=_saleid if r=pg if op=1 @ 22,25 say "*** กด enter ดูหน้าต่อไป***" inkey(0) @ 8,2 clear to 19,77 page++ @ 2,66 say "page :"+ltrim(str(page)) else eject endif r=setr else @ 22,25 clear to 22,75 @ 22,25 say "*** กด enter กลับเมนูหลัก***" endif enddo r-- sele 4 skip;r++ locate rest for month(date_sale)=val(_month); .and. year(date_sale)=val(_year) enddo @ r,2 say repl("*",75) @ r+1,37 say "รวมยอดขายในเดือนนี้ =" @ r+1,66 say sum pict "9,999,999.99" set device to screen enddo @ 22,5 clear to 22,75 @ 22,10 say "คุณต้องการทำต่อหรือไม่" @ 22,40 prompt "[Yes]" @ 22,50 prompt "[No]" menu to ans if ans=2 close all return endif enddo close all inkey(0) return //=========================== //การสรุปยอดสั่งซื้อสินค้าตามเดือนและปี procedure ports06 ans=1 do while ans=1 set color to w/bg+ cls set color to w/b @ 1,2 clear to 3,77 set color to w/gr @5,2 clear to 19,77 set color to w/rb+ @ 21,2 clear to 23,77 sele 1; use supplier sele 2; use product sele 3; use orderdet sele 4; use order op=alert("เลือกผลลัพธ์ของรายงาน",{"จอภาพ","เครื่องพิมพ์","ยกเลิก"}) if op=1 pg=19 setr=8 elseif op=2 @ 10,15 say "กรุณาใส่เดือนและปีที่ต้องการ :" pg=45 setr=8 set device to printer else close all return endif r=setr page=1 sum=0 _month=" " _year=space(4) @ 2,66 say "page :"+ltrim(str(page)) set color to b/gr,/w @ 2,10 say "รายงานสรุปการสั่งซื้อประจำเดือน " get _month @ 2,43 say " ปี :" get _year read @ 2,37 say _month @ 2,48 say _year @ 5,2 say repl("*",75) @ 6,2 say rtrim ("รหัสการสั่งซื้อ ") @ 6,12 say rtrim ("ชื่อผู้จำหน่าย ") @ 6,25 say rtrim ("รหัสสินค้า") @ 6,39 say rtrim ("ชื่อสินค้า") @ 6,56 say rtrim ("ราคา") @ 6,62 say rtrim ("จำนวน ") @ 6,70 say rtrim("รวมเงิน ") @ 7,2 say repl ("=",75) do while !eof() .and. op!=3 locate for month(date_order)=val(_month) .and. year(date_order)=val(_year) if !found() @ 5,2 clear to 19,77 @ 11,10 to 13,65 @ 12,15 say "ไม่ปรากฎเดือนที่สั่งซื้อสินค้า"+_month+ "ในแฟ้มข้อมูล" inkey(0);exit endif do while found() tot=0 _orderid=orderid _suppid=suppid @ r,2 say ltrim(str(suppid)) sele 1 locate for suppid=_suppid if found() @ r,7 say rtrim(suppname) else @ r,8 say "ลูกค้าขาจร" endif sele 3 locate for orderid=_orderid do while found() _proid=proid @r,27 say ltrim(str(proid)) sele 2 locate for proid=_proid if found() _price=price @ r,32 say rtrim(proname) @ r,49 say price endif sele 3 @ r,65 say ltrim(str(pquant)) tot=_price*pquant sum=sum+tot @ r,69 say tot pict "99,999.99" skip r++ locate rest for orderid=_orderid if r=pg if op=1 @ 22,25 say "*** กด enter ดูหน้าต่อไป***" inkey(0) @ 8,2 clear to 19,77 page++ @ 2,66 say "page :"+ltrim(str(page)) else eject endif r=setr else @ 22,25 clear to 22,75 @ 22,25 say "*** กด enter กลับเมนูหลัก***" endif enddo r-- sele 4 skip;r++ locate rest for month(date_order)=val(_month).and. year (date_order)=val(_year) enddo @ r,2 say repl("*",75) @ r+1,37 say "รวมยอดสั่งซื้อในเดือนนี้ =" @ r+1,66 say sum pict "9,999,999.99" set device to screen enddo @ 22,5 clear to 22,75 @ 22,10 say "คุณต้องการทำต่อหรือไม่" @ 22,40 prompt "[yes]" @ 22,50 prompt "[no]" menu to ans if ans=2 close all return endif enddo close all inkey(0) return //============================ //การสรุปยอดการรับสินค้าตามเดือนและปี procedure ports11 ans=1 do while ans=1 set color to w/bg+ cls set color to w/b @ 1,2 clear to 3,77 set color to w/gr @5,2 clear to 19,77 set color to w/rb+ @ 21,2 clear to 23,77 sele 1; use supplier sele 2; use product sele 3; use receidet sele 4; use receive op=alert("เลือกผลลัพธ์ของรายงาน",{"จอภาพ","เครื่องพิมพ์","ยกเลิก"}) if op=1 pg=19 setr=8 elseif op=2 @ 10,15 say "กรุณาใส่เดือนและปีที่ต้องการ : " pg=45 setr=8 set device to printer else close all return endif r=setr page=1 sum=0 set century on _month=" " _year=" " @ 2,66 say "page :"+ltrim(str(page)) set color to b/gr,/w @ 2,10 say "รายงานสรุปการรับประจำเดือน :" get _month @ 2,43 say "ปี :" get _year read @ 2,39 say _month @ 2,48 say _year @ 5,2 say repl("*",75) @ 6,2 say rtrim ("รหัสรับ ") @ 6,12 say rtrim ("ชื่อผู้จำหน่าย ") @ 6,25 say rtrim ("รหัสสินค้า") @ 6,39 say rtrim ("ชื่อสินค้า") @ 6,56 say rtrim ("ราคา") @ 6,62 say rtrim ("จำนวน ") @ 6,70 say rtrim("รวมเงิน ") @ 7,2 say repl ("*",75) do while !eof() .and. op!=3 locate for month(date_rec)=val(_month) .and.; year(date_rec)=val(_year) if !found() @ 5,2 clear to 19,77 @ 11,10 to 13,65 @ 12,15 say "ไม่ปรากฎเดือนที่ขายสินค้า"+_month+ "ในแฟ้มข้อมูล" inkey(0);exit endif do while found() tot=0 _recid=recid _suppid=suppid @ r,2 say ltrim(str(recid)) sele supplier locate for suppid=_suppid if found() @ r,7 say rtrim(suppname) else @ r,8 say "ลูกค้าขาจร" endif sele receidet locate for recid=_recid do while found() _proid=proid @r,27 say ltrim(str(proid)) sele product locate for proid=_proid if found() _price=price @ r,32 say rtrim(proname) @ r,49 say price endif sele receidet @ r,65 say ltrim(str(rquant)) tot=_price*rquant sum=sum+tot @ r,69 say tot pict "99,999.99" skip r++ locate rest for recid=_recid if r=pg if op=1 @ 22,25 say "*** กด enter ดูหน้าต่อไป***" inkey(0) @ 8,2 clear to 19,77 page++ @ 2,66 say "page :"+ltrim(str(page)) else eject endif r=setr else @ 22,25 clear to 22,75 @ 22,25 say "*** กด enter กลับเมนูหลัก***" endif enddo r-- sele 4 skip;r++ locate rest for month(date_rec)=val(_month); .and. year(date_rec)=val(_year) enddo @ r,2 say repl("*",75) @ r+1,37 say "รวมยอดขายในเดือนนี้ =" @ r+1,66 say sum pict "9,999,999.99" set device to screen enddo @ 22,5 clear to 22,75 @ 22,10 say "คุณต้องการทำต่อหรือไม่" @ 22,40 prompt "[Yes]" @ 22,50 prompt "[No]" menu to ans if ans=2 close all return endif enddo close all inkey(0) return //==================================== //การสรุปยอดการขายสินค้าตามพนักงานขายตามเดือน procedure ports02 ans=1 do while ans=1 set color to w/bg+ cls set color to w/b @ 1,2 clear to 3,77 set color to w/gr @5,2 clear to 19,77 set color to w/rb+ @ 21,2 clear to 23,77 sele 1; use product sele 2; use saledet sele 3; use sale sele 4; use employee op=alert("เลือกผลลัพธ์ของรายงาน",{"จอภาพ","เครื่องพิมพ์","ยกเลิก"}) if op=1 pg=19 setr=8 elseif op=2 @ 10,15 say "กรุณาใส่เดือนที่ต้องการ :" pg=45 setr=8 set device to printer else close all return endif r=setr page=1 sum=0 set century on _month=" " _year=space(4) @ 2,66 say "page :"+ltrim(str(page)) set color to b/gr,/w @ 2,10 say "รายงานสรุปยอดขายของพนักงานในเดือนที่" get _month @ 2,49 say " ปี :" get _year read @ 2,46 say _month @ 2,52 say _year @ 5,2 say repl("*",75) @ 6,3 say rtrim ("ชื่อพนักงาน ") @ 6,16 say rtrim ("รหัสสินค้า ") @ 6,28 say rtrim ("ชื่อสินค้า") @ 6,45 say rtrim ("ราคา") @ 6,50 say rtrim ("จำนวน") @ 6,58 say rtrim ("รวมเงิน ") @ 6,67 say rtrim ("รวมยอดขาย ") @ 7,2 say repl ("*",75) sele 3 locate for month(date_sale)=val(_month) .and. year(date_sale)=val(_year) if !found() @ 5,2 clear to 19,77 @ 11,10 to 13,65 @ 12,15 say "ในเดือนที่"+_month+ "ไม่มีการขาย" exit endif _tquant=0;sum=0;tot=0 do while !eof() sele 4 _empid=empid @ r,2 say rtrim(empname) sele 3 locate for empid=_empid .and. month(date_sale)=val(_month); .and. year(date_sale)=val(_year) _tquant=0 do while found() _saleid=saleid sele 2 locate for saleid=_saleid do while found() @r+1,19 say ltrim(str(proid)) _proid=proid;_quant=quant sele 1 locate for proid=_proid if found() @ r+1,24 say proname @ r+1,40 say price pict "999,999.99" @ r+1,52 say ltrim(str(_quant)) sum=price*_quant @ r+1,55 say sum pict "999,999.99" _tquant=_tquant+sum endif if r=pg if op=1 @ 22,25 say "*** กด enter ดูหน้าต่อไป***" inkey(0) @ 8,2 clear to 19,77 page++ @ 2,66 say "page :"+ltrim(str(page)) else eject endif r=setr else @ 22,25 clear to 22,75 @ 22,25 say "*** กด enter กลับเมนูหลัก***" endif sele 2;skip;r++ locate rest for saleid=_saleid enddo @ r,65 say _tquant pict "9,999,999.99" sele 3 skip locate rest for empid=_empid .and. month(date_sale)=val(_month); .and. year(date_sale)=val(_year) enddo @ r,65 say _tquant pict "9,999,999.99" tot=tot+_tquant sele 4 skip enddo @ r,2 clear to r,77 @ r,66 say "==================" @ r+1,40 say "รวมขายได้ทั้งหมด" @ r+1,65 say tot pict "9,999,999.99" @ r+2,66 say "_____________" @ 22,5 clear to 22,75 @ 22,10 say "คุณต้องการทำต่อหรือไม่" @ 22,40 prompt "[Yes]" @ 22,50 prompt "[No]" menu to ans if ans=2 close all return endif enddo close all inkey(0) return //=============================== //การสรุปยอดการสั่งซื้อสินค้าตามพนักงานขายตามเดือน procedure ports12 ans=1 do while ans=1 set color to w/bg+ cls set color to w/b @ 1,2 clear to 3,77 set color to w/gr @5,2 clear to 19,77 set color to w/rb+ @ 21,2 clear to 23,77 sele 1; use product sele 2; use orderdet sele 3; use order sele 4; use employee op=alert("เลือกผลลัพธ์ของรายงาน",{"จอภาพ","เครื่องพิมพ์","ยกเลิก"}) if op=1 pg=19 setr=8 elseif op=2 @ 10,15 say "กรุณาใส่เดือนที่ต้องการ :" pg=45 setr=8 set device to printer else close all return endif r=setr page=1 sum=0 set century on _month=" " _year=space(4) @ 2,66 say "page :"+ltrim(str(page)) set color to b/gr,/w @ 2,10 say "รายงานสรุปยอดสั่งซื้อของพนักงานในเดือนที่" get _month @ 2,49 say " ปี :" get _year read @ 2,46 say _month @ 2,52 say _year @ 5,2 say repl("*",75) @ 6,3 say rtrim ("ชื่อพนักงาน ") @ 6,16 say rtrim ("รหัสสินค้า ") @ 6,28 say rtrim ("ชื่อสินค้า") @ 6,45 say rtrim ("ราคา") @ 6,50 say rtrim ("จำนวน") @ 6,58 say rtrim ("รวมเงิน ") @ 6,67 say rtrim ("รวมยอดขาย ") @ 7,2 say repl ("*",75) sele 3 locate for month(date_order)=val(_month) .and. year(date_order)=val(_year) if !found() @ 5,2 clear to 19,77 @ 11,10 to 13,65 @ 12,15 say "ในเดือนที่"+_month+ "ไม่มีการขาย" exit endif _tquant=0;sum=0;tot=0 do while !eof() sele employee _empid=empid @ r,2 say rtrim(empname) sele order locate for empid=_empid .and. month(date_order)=val(_month); .and. year(date_order)=val(_year) _tquant=0 do while found() _orderid=orderid sele orderdet locate for orderid=_orderid do while found() @r+1,19 say ltrim(str(proid)) _proid=proid;_quant=pquant sele product locate for proid=_proid if found() @ r+1,24 say proname @ r+1,40 say price pict "999,999.99" @ r+1,52 say ltrim(str(_quant)) sum=price*_quant @ r+1,55 say sum pict "999,999.99" _tquant=_tquant+sum endif if r=pg if op=1 @ 22,25 say "*** กด enter ดูหน้าต่อไป***" inkey(0) @ 8,2 clear to 19,77 page++ @ 2,66 say "page :"+ltrim(str(page)) else eject endif r=setr else @ 22,25 clear to 22,75 @ 22,25 say "*** กด enter กลับเมนูหลัก***" endif sele 2;skip;r++ locate rest for orderid=_orderid enddo @ r,65 say _tquant pict "9,999,999.99" sele 3 skip locate rest for empid=_empid .and. month(date_order)=val(_month); .and. year(date_order)=val(_year) enddo @ r,65 say _tquant pict "9,999,999.99" tot=tot+_tquant sele 4 skip enddo @ r,2 clear to r,77 @ r,66 say "==================" @ r+1,40 say "รวมขายได้ทั้งหมด" @ r+1,65 say tot pict "9,999,999.99" @ r+2,66 say "_____________" @ 22,5 clear to 22,75 @ 22,10 say "คุณต้องการทำต่อหรือไม่" @ 22,40 prompt "[Yes]" @ 22,50 prompt "[No]" menu to ans if ans=2 close all return endif enddo close all inkey(0) return //=============================== //การสรุปยอดการรับสินค้าตามพนักงานขายตามเดือน procedure ports13 ans=1 do while ans=1 set color to w/bg+ cls set color to w/b @ 1,2 clear to 3,77 set color to w/gr @5,2 clear to 19,77 set color to w/rb+ @ 21,2 clear to 23,77 sele 1; use product sele 2; use receidet sele 3; use receive sele 4; use employee op=alert("เลือกผลลัพธ์ของรายงาน",{"จอภาพ","เครื่องพิมพ์","ยกเลิก"}) if op=1 pg=19 setr=8 elseif op=2 @ 10,15 say "กรุณาใส่เดือนที่ต้องการ :" pg=45 setr=8 set device to printer else close all return endif r=setr page=1 sum=0 set century on _month=" " _year=space(4) @ 2,66 say "page :"+ltrim(str(page)) set color to b/gr,/w @ 2,10 say "รายงานสรุปยอดรับสินค้าของพนักงานในเดือนที่" get _month @ 2,49 say " ปี :" get _year read @ 2,46 say _month @ 2,52 say _year @ 5,2 say repl("*",75) @ 6,3 say rtrim ("ชื่อพนักงาน ") @ 6,16 say rtrim ("รหัสสินค้า ") @ 6,28 say rtrim ("ชื่อสินค้า") @ 6,45 say rtrim ("ราคา") @ 6,50 say rtrim ("จำนวน") @ 6,58 say rtrim ("รวมเงิน ") @ 6,67 say rtrim ("รวมยอดขาย ") @ 7,2 say repl ("*",75) sele receive locate for month(date_rec)=val(_month) .and. year(date_rec)=val(_year) if !found() @ 5,2 clear to 19,77 @ 11,10 to 13,65 @ 12,15 say "ในเดือนที่"+_month+ "ไม่มีการขาย" exit endif _tquant=0;sum=0;tot=0 do while !eof() sele employee _empid=empid @ r,2 say rtrim(empname) sele receive locate for empid=_empid .and. month(date_rec)=val(_month); .and. year(date_rec)=val(_year) _tquant=0 do while found() _recid=recid sele receidet locate for recid=_recid do while found() @r+1,19 say ltrim(str(proid)) _proid=proid;_quant=rquant sele product locate for proid=_proid if found() @ r+1,24 say proname @ r+1,40 say price pict "999,999.99" @ r+1,52 say ltrim(str(_quant)) sum=price*_quant @ r+1,55 say sum pict "999,999.99" _tquant=_tquant+sum endif if r=pg if op=1 @ 22,25 say "*** กด enter ดูหน้าต่อไป***" inkey(0) @ 8,2 clear to 19,77 page++ @ 2,66 say "page :"+ltrim(str(page)) else eject endif r=setr else @ 22,25 clear to 22,75 @ 22,25 say "*** กด enter กลับเมนูหลัก***" endif sele receidet;skip;r++ locate rest for recid=_recid enddo @ r,65 say _tquant pict "9,999,999.99" sele receive skip locate rest for empid=_empid .and. month(date_rec)=val(_month); .and. year(date_rec)=val(_year) enddo @ r,65 say _tquant pict "9,999,999.99" tot=tot+_tquant sele 4 skip enddo @ r,2 clear to r,77 @ r,66 say "==================" @ r+1,40 say "รวมขายได้ทั้งหมด" @ r+1,65 say tot pict "9,999,999.99" @ r+2,66 say "_____________" @ 22,5 clear to 22,75 @ 22,10 say "คุณต้องการทำต่อหรือไม่" @ 22,40 prompt "[Yes]" @ 22,50 prompt "[No]" menu to ans if ans=2 close all return endif enddo close all inkey(0) return //=============================== //การสรุปการขายเงินสด procedure ports04 ans="y" do while ans="y" .or. ans="Y" sele 1; use customer sele 2; use product sele 3; use saledet sele 4; use sale set color to w/bg+ cls set color to w/b @ 1,2 clear to 3,77 set color to w/gr @5,2 clear to 19,77 set color to w/rb+ @ 21,2 clear to 23,77 total=0 op=alert("เลือกผลลัพธ์ของรายงาน",{"จอภาพ","เครื่องพิมพ์","ยกเลิก"}) if op=1 pg=19 setr=8 elseif op=2 pg=45 setr=8 set device to printer else close all return endif r=setr page=1 sum1=0 _status=1 @ 2,30 say "รายงานสรุปการขายสินค้าเงินสด" @ 5,3 say repl("*",75) @ 6,3 say rtrim ("รหัสขาย ") @ 6,12 say rtrim ("ชื่อลูกค้า ") @ 6,23 say rtrim ("รหัสสินค้า") @ 6,35 say rtrim("ชื่อสินค้า") @ 6,47 say rtrim ("ราคา") @ 6,55 say rtrim ("จำนวน") @ 6,69 say rtrim ("รวม ") @ 7,3 say repl ("*",75) do while !eof().and. opt!=3 if lastkey()=27 return endif use sale goto top locate for salestatus =_status if !found() @ 5,2 clear to 19,77 @ 12,20 say "**ไม่พบการขายสินค้าเป็นเงินสด กรุณาป้อนข้อมูลใหม่**" inkey(0) exit endif do while found() tot = 0 _id_sale = saleid _id_cust=custid @ r,6 say ltrim(str(saleid)) sele 1 locate for custid=_id_cust if found() @ r,12 say rtrim(custname) else @ r,12 say "ลูกค้าขาจร" endif sele 3 locate for saleid=_id_sale do while found() _id_pro=proid @ r,22 say ltrim(str(proid)) sele 2 locate for proid =_id_pro if found() _price=price @ r,29 say rtrim(proname) @ r,43 say price endif sele 3 @ r,57 say ltrim(str(quant)) tot=_price*quant sum1=sum1+tot total=sum1+total @ r,65 say sum1 pict "9,999,999" skip r++ locate rest for saleid= _id_sale if r=pg if opt=1 @ 22,2 clear to 22,77 @ 22,25 say "*** กด enter ดูหน้าต่อไป***" if lastkey()=27 return endif inkey(0) @ 8,2 clear to 19,77 page++ @ 2,66 say "page :"+ltrim(str(page)) // else // eject endif r=setr else @ 22,25 clear to 22,75 @ 22,25 say "*** กด enter กลับเมนูหลัก***" endif enddo r-- sele 4 skip;r++ locate rest for salestatus =_status enddo if eof() @ r,4 say repl("=",70) @ r+1,40 say "รวมขายได้ทั้งหมด" @ r+1,65 say total pict "9,999,999" set device to screen inkey(0) endif enddo @ 20,2 clear to 22,77 ans=" " @ 22,15 say "คุณต้องการทำต่อหรือไม่ [y/n]" @ 22,40 get ans read if lastkey() = 27 return endif if ans="Y" .or. ans="y" close all do ports04 else close all return endif enddo inkey(0) return //================================= //การสรุปการขายเงินเชื่อ procedure ports05 ans="y" do while ans="y" .or. ans="Y" sele 1; use customer sele 2; use product sele 3; use saledet sele 4; use sale set color to w/bg+ cls set color to w/b @ 1,2 clear to 3,77 set color to w/gr @5,2 clear to 19,77 set color to w/rb+ @ 21,2 clear to 23,77 total=0 op=alert("เลือกผลลัพธ์ของรายงาน",{"จอภาพ","เครื่องพิมพ์","ยกเลิก"}) if op=1 pg=19 setr=8 elseif op=2 pg=45 setr=8 set device to printer else close all return endif r=setr page=1 sum2=0 _status=2 @ 2,30 say "รายงานสรุปการขายสินค้าเงินเชื่อ" @ 5,3 say repl("*",71) @ 6,3 say rtrim ("รหัสขาย ") @ 6,12 say rtrim ("ชื่อลูกค้า ") @ 6,23 say rtrim ("รหัสสินค้า") @ 6,35 say rtrim("ชื่อสินค้า") @ 6,47 say rtrim ("ราคา") @ 6,55 say rtrim ("จำนวน") @ 6,69 say rtrim ("รวม ") @ 7,3 say repl ("*",71) do while !eof().and. opt!=3 if lastkey() =27 return endif locate for salestatus =_status if !found() @ 5,2 clear to 19,77 @ 12,20 say "**ไม่พบการขายสินค้าเป็นเงินเชื่อ กรุณาป้อนข้อมูลใหม่**" inkey(0) exit endif do while found() tot = 0 _id_sale = saleid _id_cust=custid @ r,6 say ltrim(str(saleid)) sele 1 locate for custid=_id_cust if found() @ r,12 say rtrim(custname) endif sele 3 locate for saleid=_id_sale do while found() _id_pro=proid @ r,22 say ltrim(str(proid)) sele 2 locate for proid =_id_pro if found() _price=price @ r,29 say rtrim(proname) @ r,43 say price endif sele 3 @ r,57 say ltrim(str(quant)) tot=_price*quant sum2=sum2+tot total=sum2+total @ r,65 say sum2 pict "9,999,99" skip r++ locate rest for saleid= _id_sale if r=pg if opt=1 @ 22,2 clear to 22,77 @ 22,25 say "*** กด enter ดูหน้าต่อไป***" if lastkey()=27 return endif inkey(0) @ 8,2 clear to 19,77 page++ @ 2,66 say "page :"+ltrim(str(page)) // else // eject endif r=setr else @ 22,25 clear to 22,75 @ 22,25 say "*** กด enter กลับเมนูหลัก***" endif enddo r-- sele 4 skip r++ locate rest for salestatus =_status enddo if eof() @ r,4 say repl("=",70) @ r+1,40 say "รวมขายได้ทั้งหมด" @ r+1,65 say total pict "99,999,99" set device to screen inkey(0) endif enddo @ 20,2 clear to 22,77 ans=" " @ 22,15 say "คุณต้องการทำต่อหรือไม่ [y / n]:" @ 22,40 get ans read if lastkey() = 27 return endif if ans="Y" .or. ans="y" close all do ports05 else close all return endif enddo inkey(0) return //===================== //รายงานสินค้าที่ยอดขาย 10 อันดับแรก procedure ports08 set cursor off cls set date format to "dd/mm/yyyy" opt=alert("เลือกผลลัพธ์ของรายงาน",{"จอภาพ","เครื่องพิมพ์"}) use saledet sort on quant/d to tmr use tmr; copy to saledet use saledet if opt=1 pg=15 setr=6 else pg=20 setr=1 proid=0 set device to printer endif set color to w+/b cls set color to w/bg+ cls set color to w/b @ 1,2 clear to 3,77 set color to w/gr @5,2 clear to 19,77 //set color to w/rb+ //@ 21,2 clear to 23,77 @ 2,4 say "วัน/เดือน/ปี:"+dtoc(date()) @ 2,53 say time() @ 5,25 say "รายงานข้อมูลยอดขายสินค้า 10 อันดับ" @ 7,15 say "ลำดับ" @ 7,30 say "รหัสสินค้า" @ 7,55 say "ยอดขาย" @ 6,2 say repl("^",75) n=0 r=0 r++ n++ ln=8 for i=1 to 10 while i<=10 @ln,6 say str(i) @ln,30 say ltrim(str(proid)) @ln++,50 say quant skip i++ continue if r=pg if opt=1 inkey(0) else eject endif r=setr endif end end inkey(0) cls //============================ //สรุปยอดสินค้าค้างสต๊อก procedure ports07 save screen to scr set date format to "dd/mm/yyyy" opt=alert("เลือกผลลัพธ์ของรายงาน",{"จอภาพ","เครื่องพิมพ์"}) use product if opt=1 setr=7 else pg=20 setr=1 set device to printer endif set color to w+/b cls t=1 @ 2,4 say "วัน/เดือน/ปี:"+dtoc(date()) @ 2,45 say time() @ 2,65 say "หน้า:"+ltrim(str(t)) @ 3,25 say " รายงานข้อมูลสินค้าค้างสต็อก" @ 4,8 say "ลำดับ" @ 4,14 say "รหัส" @ 4,25 say "ชื่อ" @ 4,53 say "ราคาขาย" @ 4,65 say "จำนวน" @ 4,73 say "จุดสั่ง " @ 5,2 say repl("^",77) r=setr i=0 n=0 while !eof() .and. opt!=3 i++ r++ n++ ?n,'',proid,'',proname,str(cost),str(quantity),str(reorder) skip if n=15 if opt=1 inkey(0) @ 6,8 clear to 21,68 i=1 t++ else eject endif r=setr endif end set device to screen inkey(0) restore screen from scr cls return //================================== |