123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567 |
- $PBExportHeader$w_outware_receive_fx.srw
- $PBExportComments$销售发货单 转 采购收货单
- forward
- global type w_outware_receive_fx from w_publ_base_style
- end type
- type cb_accept from uo_imflatbutton within w_outware_receive_fx
- end type
- type cb_reject from uo_imflatbutton within w_outware_receive_fx
- end type
- type dw_tempoutware from datawindow within w_outware_receive_fx
- end type
- type st_1 from statictext within w_outware_receive_fx
- end type
- type mle_summary from multilineedit within w_outware_receive_fx
- end type
- type tab_1 from tab within w_outware_receive_fx
- end type
- type tabpage_1 from userobject within tab_1
- end type
- type dw_tempoutwaremx from u_dw_rbtnfilter within tabpage_1
- end type
- type tabpage_1 from userobject within tab_1
- dw_tempoutwaremx dw_tempoutwaremx
- end type
- type tab_1 from tab within w_outware_receive_fx
- tabpage_1 tabpage_1
- end type
- type st_2 from statictext within w_outware_receive_fx
- end type
- type mle_postscript from multilineedit within w_outware_receive_fx
- end type
- type st_3 from statictext within w_outware_receive_fx
- end type
- type mle_remark from multilineedit within w_outware_receive_fx
- end type
- end forward
- global type w_outware_receive_fx from w_publ_base_style
- integer width = 3771
- integer height = 2372
- string title = "供应商销售发货单"
- boolean minbox = false
- windowtype windowtype = response!
- windowstate windowstate = maximized!
- long backcolor = 16777215
- string icon = "graphics\chain_link_128px.ico"
- boolean center = true
- cb_accept cb_accept
- cb_reject cb_reject
- dw_tempoutware dw_tempoutware
- st_1 st_1
- mle_summary mle_summary
- tab_1 tab_1
- st_2 st_2
- mle_postscript mle_postscript
- st_3 st_3
- mle_remark mle_remark
- end type
- global w_outware_receive_fx w_outware_receive_fx
- type variables
- s_open_packet s_tran
- datawindow dw_tempoutwaremx
- end variables
- forward prototypes
- public function integer wf_retrieve (readonly string arg_sn, ref string arg_msg)
- public subroutine wf_accept ()
- public function integer wf_reject (readonly string arg_postscript)
- end prototypes
- public function integer wf_retrieve (readonly string arg_sn, ref string arg_msg);int rslt = 1
- dw_tempoutware.Reset( )
- dw_tempoutwaremx.Reset( )
- if (arg_sn = '') then
- rslt = 0
- arg_msg = 'SN号为空'
- goto ext
- end if
- oleobject outwareInfo
- outwareInfo = FXAppCom.GetOutWare(app_token_fx, arg_sn, ref arg_msg)
- if (arg_msg <> '') then
- rslt = 0
- goto ext
- end if
- oleobject outware, outwaremxs, mxItem
- outware = outwareInfo.GetPBDictionary('outware')
- long row
- dw_tempoutware.SetRedraw(false)
- row = dw_tempoutware.InsertRow(0)
- dw_tempoutware.Object.outwarecode[row] = outware.GetString('outwarecode')
- dw_tempoutware.Object.flag_bill[row] = outware.GetInt('flag_bill')
- dw_tempoutware.Object.part[row] = outware.GetString('part')
- dw_tempoutware.Object.sptname[row] = outware.GetString('sptname')
- dw_tempoutware.Object.rel_address[row] = outware.GetString('rel_address')
- dw_tempoutware.Object.relstr_1[row] = outware.GetString('relstr_1')
- dw_tempoutware.Object.relstr_2[row] = outware.GetString('relstr_2')
- dw_tempoutware.Object.damt[row] = outware.GetDouble('damt')
- dw_tempoutware.Object.otheramt[row] = outware.GetDouble('otheramt')
- if ( not IsNull(outware.GetDateTime('outdate'))) then
- dw_tempoutware.Object.outdate[row] = outware.GetDateTime('outdate')
- end if
- if (not IsNull(outware.GetDateTime('viewdate'))) then
- dw_tempoutware.Object.viewdate[row] = outware.GetDateTime('viewdate')
- end if
- dw_tempoutware.Object.outrep[row] = outware.GetString('outrep')
- dw_tempoutware.Object.upname[row] = outware.GetString('upname')
- dw_tempoutware.Object.dscrp[row] = outware.GetString('dscrp')
- dw_tempoutware.Object.opemp[row] = outware.GetString('opemp')
- if (not IsNull(outware.GetDateTime('opdate'))) then
- dw_tempoutware.Object.opdate[row] = outware.GetDateTime('opdate')
- end if
- dw_tempoutware.Object.auditingrep[row] = outware.GetString('auditingrep')
- if (not IsNull(outware.GetDateTime('auditingdate'))) then
- dw_tempoutware.Object.auditingdate[row] = outware.GetDateTime('auditingdate')
- end if
- dw_tempoutware.Object.confirmuser[row] = outware.GetString('confirmuser')
- if (not IsNull(outware.GetDateTime('confirmtime'))) then
- dw_tempoutware.Object.confirmtime[row] = outware.GetDateTime('confirmtime')
- end if
- dw_tempoutware.SetRedraw(true)
- outwaremxs = outwareInfo.GetArrOfPBDictionary('outwaremxs')
- long i
- dw_tempoutwaremx.SetRedraw(false)
- for i = 1 to outwaremxs.Count
- mxItem = outwaremxs.GetItem(i - 1)
- row = dw_tempoutwaremx.InsertRow(0)
-
- dw_tempoutwaremx.Object.fiebrelcode[row] = mxItem.GetString('fiebrelcode')
- dw_tempoutwaremx.Object.mxcode[row] = mxItem.GetString('mxcode')
- dw_tempoutwaremx.Object.mtrlcode[row] = mxItem.GetString('mtrlcode')
- dw_tempoutwaremx.Object.mtrlname[row] = mxItem.GetString('mtrlname')
- dw_tempoutwaremx.Object.mtrlmode[row] = mxItem.GetString('mtrlmode')
- dw_tempoutwaremx.Object.qty[row] = mxItem.GetDouble('qty')
- dw_tempoutwaremx.Object.accept_qty[row] = mxItem.GetDouble('accept_qty')
- dw_tempoutwaremx.Object.accepted_qty[row] = mxItem.GetDouble('accepted_qty')
- dw_tempoutwaremx.Object.task_qty[row] = mxItem.GetDouble('task_qty')
- dw_tempoutwaremx.Object.unit[row] = Trim(mxItem.GetString('unit'))
- dw_tempoutwaremx.Object.enprice[row] = mxItem.GetDouble('enprice')
- dw_tempoutwaremx.Object.rebate[row] = mxItem.GetDouble('rebate')
- dw_tempoutwaremx.Object.taxrate[row] = mxItem.GetDouble('taxrate')
- dw_tempoutwaremx.Object.net_weight[row] = mxItem.GetDouble('net_weight')
- dw_tempoutwaremx.Object.gross_weight[row] = mxItem.GetDouble('gross_weight')
- dw_tempoutwaremx.Object.cubage[row] = mxItem.GetDouble('cubage')
- dw_tempoutwaremx.Object.fxmtrlid[row] = mxItem.GetInt('fxmtrlid')
- dw_tempoutwaremx.Object.taskid[row] = mxItem.GetInt('taskid')
- dw_tempoutwaremx.Object.printid[row] = mxItem.GetInt('printid')
- next
- dw_tempoutwaremx.SetRedraw(true)
- ext:
- return rslt
- end function
- public subroutine wf_accept ();oleobject item, list
- list = FXAppCom.CreArrOfPbDictionary()
- long i
- for i = 1 to dw_tempoutwaremx.RowCount( )
- if (dw_tempoutwaremx.Object.accept_qty[i] <= 0) then continue
-
- item = FXAppCom.CreatePbDictionary()
-
- item.SetInt('taskid', dw_tempoutwaremx.Object.taskid[i])
- item.SetInt('printid', dw_tempoutwaremx.Object.printid[i])
- item.SetDouble('qty', dw_tempoutwaremx.Object.accept_qty[i])
- item.SetString('mxcode', dw_tempoutware.Object.outwarecode[1]) // 存放供应商相关发货单号
-
- list.Add(item)
- next
- string arg_msg
- FXAppCom.AcceptOutware(app_token_fx, list, s_tran.sn, ref arg_msg)
- if (arg_msg <> '') then
- MessageBox('操作失败', arg_msg)
- else
- MessageBox('提示', '成功!')
- Close(this)
- return
- end if
- end subroutine
- public function integer wf_reject (readonly string arg_postscript);int rslt = 1
- string arg_msg
- FXAppCom.RejectOutware(app_token_fx, s_tran.sn, arg_postscript, ref arg_msg)
- if (arg_msg <> '') then
- MessageBox('提示', '拒绝操作失败:' + arg_msg)
- else
- MessageBox('提示' ,'成功')
- Close(this)
- end if
- return rslt
- end function
- on w_outware_receive_fx.create
- int iCurrent
- call super::create
- this.cb_accept=create cb_accept
- this.cb_reject=create cb_reject
- this.dw_tempoutware=create dw_tempoutware
- this.st_1=create st_1
- this.mle_summary=create mle_summary
- this.tab_1=create tab_1
- this.st_2=create st_2
- this.mle_postscript=create mle_postscript
- this.st_3=create st_3
- this.mle_remark=create mle_remark
- iCurrent=UpperBound(this.Control)
- this.Control[iCurrent+1]=this.cb_accept
- this.Control[iCurrent+2]=this.cb_reject
- this.Control[iCurrent+3]=this.dw_tempoutware
- this.Control[iCurrent+4]=this.st_1
- this.Control[iCurrent+5]=this.mle_summary
- this.Control[iCurrent+6]=this.tab_1
- this.Control[iCurrent+7]=this.st_2
- this.Control[iCurrent+8]=this.mle_postscript
- this.Control[iCurrent+9]=this.st_3
- this.Control[iCurrent+10]=this.mle_remark
- end on
- on w_outware_receive_fx.destroy
- call super::destroy
- destroy(this.cb_accept)
- destroy(this.cb_reject)
- destroy(this.dw_tempoutware)
- destroy(this.st_1)
- destroy(this.mle_summary)
- destroy(this.tab_1)
- destroy(this.st_2)
- destroy(this.mle_postscript)
- destroy(this.st_3)
- destroy(this.mle_remark)
- end on
- event open;call super::open;s_tran = Message.PowerObjectParm
- if IsNUll(s_tran) then
- MessageBox('提示', '打开方式有误,SN号为空')
- Close(this)
- return
- end if
- dw_tempoutwaremx = tab_1.tabpage_1.dw_tempoutwaremx
- mle_summary.Text = s_tran.summary
- mle_postscript.Text = s_tran.postscript
- mle_remark.Text = s_tran.remark
- string arg_msg
- wf_retrieve(s_tran.sn, ref arg_msg)
- if (arg_msg <> '') then
- MessageBox('提示', arg_msg)
- Close(this)
- return
- end if
- end event
- event resize;call super::resize;if (this.Width < 3762) then this.Width = 3762
- if (this.Height < 2292) then this.Height = 2292
- mle_summary.Width = this.workspacewidth( ) - mle_summary.X - 14
- mle_postscript.Width = mle_summary.Width
- mle_remark.Width = mle_summary.Width
- tab_1.Width = this.workspacewidth( )
- tab_1.tabpage_1.dw_tempoutwaremx.Width = tab_1.Width - 40
- tab_1.Height = this.workspaceheight( ) - tab_1.Y
- tab_1.tabpage_1.dw_tempoutwaremx.Height = tab_1.Height - 118
- cb_exit.X = this.workspacewidth( ) - cb_exit.Width
- end event
- type cb_func from w_publ_base_style`cb_func within w_outware_receive_fx
- boolean visible = false
- end type
- type cb_exit from w_publ_base_style`cb_exit within w_outware_receive_fx
- integer x = 2766
- end type
- type ln_bar from w_publ_base_style`ln_bar within w_outware_receive_fx
- end type
- type ln_bar2 from w_publ_base_style`ln_bar2 within w_outware_receive_fx
- end type
- type r_bar from w_publ_base_style`r_bar within w_outware_receive_fx
- end type
- type cb_accept from uo_imflatbutton within w_outware_receive_fx
- integer width = 384
- integer height = 164
- integer taborder = 30
- boolean bringtotop = true
- string text = "确认本次收货"
- string normalpicname = "ok.bmp"
- integer picsize = 16
- toolbaralignment pic_align = alignattop!
- boolean border = false
- end type
- event clicked;call super::clicked;dw_tempoutwaremx.SetFilter('')
- dw_tempoutwaremx.Filter()
- long cnt
- cnt = dw_tempoutwaremx.RowCount( )
- if (cnt <= 0) then
- MessageBox('提示', '没有收货明细')
- return
- end if
- dw_tempoutwaremx.AcceptText( )
- string sum_msg
- long i
- boolean pass = true
- for i = 1 to cnt
- if (dw_tempoutwaremx.Object.accept_qty[i] <= 0) then
- sum_msg += '第' + string(i) + '行,物料名称[' + string(dw_tempoutwaremx.Object.mtrlname[i]) + '],本次收货数为0~r~n'
- end if
-
- if (dw_tempoutwaremx.Object.accept_qty[i] > dw_tempoutwaremx.Object.qty[i]) then
- sum_msg += '第' + string(i) + '行,物料名称[' + string(dw_tempoutwaremx.Object.mtrlname[i]) + '],本次收货数大于发货数~r~n'
- pass = false
- end if
-
- if (dw_tempoutwaremx.Object.accept_qty[i] + dw_tempoutwaremx.Object.accepted_qty[i] > dw_tempoutwaremx.Object.task_qty[i]) then
- sum_msg += '第' + string(i) + '行,物料名称[' + string(dw_tempoutwaremx.Object.mtrlname[i]) + '],总收货数大于订单采购数~r~n'
- pass = false
- end if
- next
- if (sum_msg <> '' and pass) then
- if (MessageBox('提示', sum_msg + '~r~n确认继续?', Question!, YesNoCancel!) <> 1) then
- return
- end if
- elseif (sum_msg <> '' and (not pass)) then
- OpenWithParm(w_message_err, '存在本次收货数大于发货数 / 总收货数大于订单采购数的明细,请检查:~r~n' + sum_msg)
- return
- end if
- wf_accept( )
- end event
- type cb_reject from uo_imflatbutton within w_outware_receive_fx
- integer x = 384
- integer width = 165
- integer height = 164
- integer taborder = 30
- boolean bringtotop = true
- string text = "拒绝"
- string normalpicname = "DELETE.BMP"
- integer picsize = 16
- toolbaralignment pic_align = alignattop!
- boolean border = false
- end type
- event clicked;call super::clicked;Open(w_packet_msg_edit_fx)
- s_open_packet s_ret
- s_ret = Message.PowerObjectParm
- if (s_ret.returnflag = 0) then
- MessageBox('提示', '操作已取消')
- return
- end if
- wf_reject(s_ret.postscript)
- end event
- type dw_tempoutware from datawindow within w_outware_receive_fx
- integer y = 172
- integer width = 1801
- integer height = 1104
- integer taborder = 20
- boolean bringtotop = true
- string title = "none"
- string dataobject = "dw_tempoutware"
- boolean livescroll = true
- end type
- type st_1 from statictext within w_outware_receive_fx
- integer x = 1824
- integer y = 172
- integer width = 146
- integer height = 48
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- long backcolor = 16777215
- string text = "摘要"
- boolean focusrectangle = false
- end type
- type mle_summary from multilineedit within w_outware_receive_fx
- integer x = 1824
- integer y = 232
- integer width = 1929
- integer height = 300
- integer taborder = 30
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- boolean vscrollbar = true
- boolean autovscroll = true
- end type
- type tab_1 from tab within w_outware_receive_fx
- integer x = 5
- integer y = 1280
- integer width = 3771
- integer height = 848
- integer taborder = 40
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long backcolor = 16777215
- boolean raggedright = true
- boolean focusonbuttondown = true
- integer selectedtab = 1
- tabpage_1 tabpage_1
- end type
- on tab_1.create
- this.tabpage_1=create tabpage_1
- this.Control[]={this.tabpage_1}
- end on
- on tab_1.destroy
- destroy(this.tabpage_1)
- end on
- type tabpage_1 from userobject within tab_1
- integer x = 18
- integer y = 96
- integer width = 3735
- integer height = 736
- long backcolor = 16777215
- string text = "发货明细"
- long tabtextcolor = 33554432
- long tabbackcolor = 16777215
- long picturemaskcolor = 536870912
- dw_tempoutwaremx dw_tempoutwaremx
- end type
- on tabpage_1.create
- this.dw_tempoutwaremx=create dw_tempoutwaremx
- this.Control[]={this.dw_tempoutwaremx}
- end on
- on tabpage_1.destroy
- destroy(this.dw_tempoutwaremx)
- end on
- type dw_tempoutwaremx from u_dw_rbtnfilter within tabpage_1
- integer width = 3707
- integer height = 548
- integer taborder = 20
- string dataobject = "dw_tempoutwaremx"
- boolean hscrollbar = true
- boolean vscrollbar = true
- borderstyle borderstyle = stylebox!
- boolean rbutton_filter_use = true
- boolean rbutton_setposition_use = true
- boolean titleclick_sort_use = true
- end type
- event clicked;call super::clicked;if (row <= 0) then return
- this.SelectRow(0, false)
- this.SelectRow(row, true)
- end event
- type st_2 from statictext within w_outware_receive_fx
- integer x = 1824
- integer y = 548
- integer width = 146
- integer height = 48
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- long backcolor = 16777215
- string text = "附言"
- boolean focusrectangle = false
- end type
- type mle_postscript from multilineedit within w_outware_receive_fx
- integer x = 1824
- integer y = 604
- integer width = 1929
- integer height = 300
- integer taborder = 40
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- boolean vscrollbar = true
- boolean autovscroll = true
- end type
- type st_3 from statictext within w_outware_receive_fx
- integer x = 1824
- integer y = 916
- integer width = 146
- integer height = 48
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- long backcolor = 16777215
- string text = "备注"
- boolean focusrectangle = false
- end type
- type mle_remark from multilineedit within w_outware_receive_fx
- integer x = 1824
- integer y = 976
- integer width = 1929
- integer height = 300
- integer taborder = 40
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- boolean vscrollbar = true
- boolean autovscroll = true
- end type
|