123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568 |
- $PBExportHeader$w_buytask_rqdate_rece_fx.srw
- $PBExportComments$客户采购订单交期变更单接收界面
- forward
- global type w_buytask_rqdate_rece_fx from w_publ_base_style
- end type
- type dw_1 from u_dw_rbtnfilter within w_buytask_rqdate_rece_fx
- end type
- type cb_ok from uo_imflatbutton within w_buytask_rqdate_rece_fx
- end type
- type cbx_ch_all from checkbox within w_buytask_rqdate_rece_fx
- end type
- type st_1 from statictext within w_buytask_rqdate_rece_fx
- end type
- type st_comname from statictext within w_buytask_rqdate_rece_fx
- end type
- type cb_retrieve from uo_imflatbutton within w_buytask_rqdate_rece_fx
- end type
- end forward
- global type w_buytask_rqdate_rece_fx from w_publ_base_style
- integer width = 4686
- integer height = 1812
- string title = "采购订单交期变更"
- boolean minbox = false
- windowtype windowtype = response!
- long backcolor = 16777215
- boolean center = true
- event ue_p_dealflag_t ( )
- event ue_p_rqdate_re_t ( )
- event ue_p_reason_re_t ( )
- dw_1 dw_1
- cb_ok cb_ok
- cbx_ch_all cbx_ch_all
- st_1 st_1
- st_comname st_comname
- cb_retrieve cb_retrieve
- end type
- global w_buytask_rqdate_rece_fx w_buytask_rqdate_rece_fx
- type variables
- s_open_packet s_tran
- end variables
- forward prototypes
- public function integer wf_retrieve ()
- public function integer wf_chk (ref string arg_msg)
- end prototypes
- event ue_p_dealflag_t();// 批设置处理方式
- long curRow
- curRow = dw_1.GetRow()
- if (curRow <= 0) then return
- dw_1.AcceptText()
- dw_1.SetRedraw(false)
- long dealflag, i
- dealflag = dw_1.Object.dealflag[curRow]
- for i = 1 to dw_1.RowCount()
- if (dw_1.Object.editable[i] <> 1) then continue
- if (dw_1.Object.ch[i] <> 1) then continue
-
- dw_1.Object.dealflag[i] = dealflag
- next
- dw_1.AcceptText()
- dw_1.SetRedraw(true)
- end event
- event ue_p_rqdate_re_t();// 批设置回复交期
- long curRow
- curRow = dw_1.GetRow()
- if (curRow <= 0) then return
- dw_1.AcceptText()
- dw_1.SetRedraw(false)
- long i
- datetime rqdate_re
- rqdate_re = dw_1.Object.rqdate_re[curRow]
- for i = 1 to dw_1.RowCount()
- if (dw_1.Object.editable[i] <> 1) then continue
- if (dw_1.Object.ch[i] <> 1) then continue
-
- dw_1.Object.rqdate_re[i] = rqdate_re
- next
- dw_1.AcceptText()
- dw_1.SetRedraw(true)
- end event
- event ue_p_reason_re_t();// 批设置回复原因
- long curRow
- curRow = dw_1.GetRow()
- if (curRow <= 0) then return
- dw_1.AcceptText()
- dw_1.SetRedraw(false)
- long i
- string reason_re
- reason_re = dw_1.Object.reason_re[curRow]
- for i = 1 to dw_1.RowCount()
- if (dw_1.Object.editable[i] <> 1) then continue
- if (dw_1.Object.ch[i] <> 1) then continue
-
- dw_1.Object.reason_re[i] = reason_re
- next
- dw_1.AcceptText()
- dw_1.SetRedraw(true)
- end event
- public function integer wf_retrieve ();int rslt = 1
- dw_1.Reset()
- string arg_msg
- oleobject obj, parm, list, item
- parm = FXAppCom.CreatePbDictionary()
- parm.SetString('token', app_token_fx)
- //parm.SetString('sendsccode', s_tran.sendsccode)
- //parm.SetString('adduser', s_tran.adduser)
- parm.SetString('sendcusid', s_tran.sendcusid)
- parm.SetInt('receivereltype', s_tran.receivereltype)
- parm.SetInt('receiverelid', s_tran.receiverelid)
- obj = FXAppCom.GetBuytaskRqdate(parm, ref arg_msg)
- if (arg_msg <> '') then
- rslt = 0
- MessageBox('提示', '获取采购订单交期变更信息有误:' + arg_msg)
- goto ext
- end if
- //long complete
- //complete = obj.GetInt('complete')
- //if (complete = 1) then
- // cb_ok.Enabled = false
- //end if
- long i, row, tmp_dealflag
- dw_1.SetRedraw(false)
- list = obj.GetPBArray('list')
- for i = 1 to list.Count
- row = dw_1.InsertRow(0)
- item = list.GetPBDictionary(i - 1)
- // dw_1.Object.ch[row] = item.GetString('ch')
- // dw_1.Object.ifmatch[row] = item.GetString('ifmatch')
- dw_1.Object.serialnum[row] = item.GetString('serialnum')
- dw_1.Object.AddUser[row] = item.GetString('AddUser')
- dw_1.Object.scid[row] = item.GetInt('scid')
- dw_1.Object.taskid[row] = item.GetInt('taskid')
- dw_1.Object.taskcode[row] = item.GetString('taskcode')
- dw_1.Object.printid[row] = item.GetInt('printid')
- dw_1.Object.mtrlid[row] = item.GetInt('mtrlid')
- dw_1.Object.mtrlcode[row] = item.GetString('mtrlcode')
- dw_1.Object.mtrlname[row] = item.GetString('mtrlname')
- dw_1.Object.mtrlmode[row] = item.GetString('mtrlmode')
- dw_1.Object.status[row] = item.GetString('status')
- dw_1.Object.woodcode[row] = item.GetString('woodcode')
- dw_1.Object.pcode[row] = item.GetString('pcode')
- dw_1.Object.qty[row] = item.GetDouble('qty')
- dw_1.Object.qty_consigned[row] = item.GetDouble('qty_consigned')
- dw_1.Object.unit[row] = item.GetString('unit')
- dw_1.Object.mxdscrp[row] = item.GetString('mxdscrp')
- dw_1.Object.plancode[row] = item.GetString('plancode')
- dw_1.Object.reason[row] = item.GetString('reason')
- dw_1.Object.reason_re[row] = item.GetString('reason_re')
- dw_1.Object.tid[row] = item.GetString('tid')
- dw_1.Object.Summary[row] = item.GetString('Summary')
- dw_1.Object.Postscript[row] = item.GetString('Postscript')
- dw_1.Object.Remark[row] = item.GetString('Remark')
-
- if (not IsNull(item.GetDateTime('rqdate_ori'))) then
- dw_1.Object.rqdate_ori[row] = item.GetDateTime('rqdate_ori')
- end if
- if (not IsNull(item.GetDateTime('rqdate_expect'))) then
- dw_1.Object.rqdate_expect[row] = item.GetDateTime('rqdate_expect')
- end if
- if (not IsNull(item.GetDateTime('rqdate_re'))) then
- dw_1.Object.rqdate_re[row] = item.GetDateTime('rqdate_re')
- else
- if (not IsNull(item.GetDateTime('rqdate_expect'))) then
- dw_1.Object.rqdate_re[row] = item.GetDateTime('rqdate_expect')
- end if
- end if
- if (not IsNull(item.GetDateTime('AddTime'))) then
- dw_1.Object.AddTime[row] = item.GetDateTime('AddTime')
- end if
- tmp_dealflag = item.GetInt('dealflag')
- dw_1.Object.dealflag[row] = tmp_dealflag
- if (tmp_dealflag = 0 or tmp_dealflag = 3) then // 0-未处理 3-暂不处理
- dw_1.Object.editable[row] = 1 // 未处理状态下,可编辑
- dw_1.Object.ch[row] = 1
- else
- dw_1.Object.editable[row] = 0
- end if
-
- if (not IsNull(item.GetInt('myprintid'))) then
- if (item.GetInt('myprintid') > 0) then
- dw_1.Object.ifmatch[row] = 1 // 匹配
- else
- dw_1.Object.ifmatch[row] = 0
- dw_1.Object.dealflag[row] = 2 // 不匹配的拒绝
- // dw_1.Object.editable[row] = 0 // 不匹配状态下,不可编辑
- end if
- else
- dw_1.Object.ifmatch[row] = 0
- dw_1.Object.dealflag[row] = 2 // 不匹配的拒绝
- end if
- next
- dw_1.AcceptText()
- dw_1.SetRedraw(true)
- ext:
- return rslt
- end function
- public function integer wf_chk (ref string arg_msg);int rslt = 1
- // 检查:匹配项,同意-日期一致
- // 检查:不匹配项,不能选择同意
- long i, dealflag, ifmatch
- datetime rqdate_re, rqdate_expect
- for i = 1 to dw_1.RowCount()
- if (dw_1.Object.editable[i] = 0) then continue
-
- dealflag = dw_1.Object.dealflag[i]
- ifmatch = dw_1.Object.ifmatch[i]
- rqdate_re = dw_1.Object.rqdate_re[i]
- rqdate_expect = dw_1.Object.rqdate_expect[i]
-
- if (dealflag = 1) then // 匹配同意项
- if (ifmatch <> 1) then
- rslt = 0
- arg_msg += '第' + string(i) + '行,不匹配项不能选择"同意"的处理方式,默认选择"拒绝";~r~n'
- elseif (IsNull(rqdate_re)) then
- rslt = 0
- arg_msg += '第' + string(i) + '行,回复交期不能为空;~r~n'
- elseif (rqdate_re <> rqdate_expect) then
- rslt = 0
- arg_msg += '第' + string(i) + '行,(匹配同意项)回复交期与期望变更交期不一致;~r~n'
- end if
- end if
- next
- return rslt
- end function
- on w_buytask_rqdate_rece_fx.create
- int iCurrent
- call super::create
- this.dw_1=create dw_1
- this.cb_ok=create cb_ok
- this.cbx_ch_all=create cbx_ch_all
- this.st_1=create st_1
- this.st_comname=create st_comname
- this.cb_retrieve=create cb_retrieve
- iCurrent=UpperBound(this.Control)
- this.Control[iCurrent+1]=this.dw_1
- this.Control[iCurrent+2]=this.cb_ok
- this.Control[iCurrent+3]=this.cbx_ch_all
- this.Control[iCurrent+4]=this.st_1
- this.Control[iCurrent+5]=this.st_comname
- this.Control[iCurrent+6]=this.cb_retrieve
- end on
- on w_buytask_rqdate_rece_fx.destroy
- call super::destroy
- destroy(this.dw_1)
- destroy(this.cb_ok)
- destroy(this.cbx_ch_all)
- destroy(this.st_1)
- destroy(this.st_comname)
- destroy(this.cb_retrieve)
- end on
- event open;call super::open;s_tran = Message.PowerObjectParm
- if IsNUll(s_tran) then
- MessageBox('提示', '打开方式有误')
- Close(this)
- return
- end if
- if (not IsValid(s_tran)) then
- MessageBox('提示', '打开方式无效')
- Close(this)
- return
- end if
- string arg_msg
- if (f_find_fx_user_power(50, ref arg_msg) <> 1) then // 50-采购订单协商
- MessageBox('权限提示', arg_msg)
- Close(this)
- return
- end if
- //sle_comname.Text = s_tran.comname
- //sle_adduser.Text = s_tran.adduser
- //sle_addtime.Text = string(s_tran.addtime, 'yyyy-MM-dd hh:mm:ss')
- st_comname.Text = s_tran.comname
- //st_adduser.Text = s_tran.adduser
- if (wf_retrieve( ) = 0) then
- Close(this)
- end if
- end event
- event resize;call super::resize;dw_1.Width = this.workspacewidth( )
- dw_1.Height = this.workspaceheight( ) - dw_1.Y
- cb_exit.X = this.workspacewidth( ) - cb_exit.Width
- end event
- type cb_func from w_publ_base_style`cb_func within w_buytask_rqdate_rece_fx
- boolean visible = false
- integer x = 640
- boolean enabled = false
- string normalpicname = "setting.BMP"
- integer picsize = 16
- end type
- type cb_exit from w_publ_base_style`cb_exit within w_buytask_rqdate_rece_fx
- integer x = 2130
- end type
- type ln_bar from w_publ_base_style`ln_bar within w_buytask_rqdate_rece_fx
- end type
- type ln_bar2 from w_publ_base_style`ln_bar2 within w_buytask_rqdate_rece_fx
- end type
- type r_bar from w_publ_base_style`r_bar within w_buytask_rqdate_rece_fx
- end type
- type dw_1 from u_dw_rbtnfilter within w_buytask_rqdate_rece_fx
- integer y = 284
- integer width = 4448
- integer height = 1284
- integer taborder = 20
- boolean bringtotop = true
- string dataobject = "dw_tempbuytask_rqdate"
- boolean hscrollbar = true
- boolean vscrollbar = true
- boolean hsplitscroll = true
- 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
- this.SelectRow(0, false)
- this.SelectRow(row, true)
- this.SetRow(row)
- end if
- end event
- event rowfocuschanged;call super::rowfocuschanged;if (currentrow > 0) then
- this.SelectRow(0, false)
- this.SelectRow(currentrow, true)
- this.SetRow(currentrow)
- end if
- end event
- event doubleclicked;call super::doubleclicked;string dwoname
- dwoname = dwo.Name
- row = this.GetRow()
- if (dwoname = 'dealflag_t' or dwoname = 'rqdate_re_t' or dwoname = 'reason_re_t') then
- if (this.IsSelected(row)) then
- parent.PostEvent('ue_p_' + dwoname)
- else
- MessageBox('提示', '使用批设置功能,请选中一行作为批设置的取值')
- end if
- else
-
- end if
- //if (row > 0) then
- //
- //end if
- end event
- type cb_ok from uo_imflatbutton within w_buytask_rqdate_rece_fx
- integer x = 155
- integer width = 151
- integer height = 164
- integer taborder = 20
- boolean bringtotop = true
- string normalpicname = "ok.bmp"
- integer picsize = 16
- toolbaralignment pic_align = alignattop!
- boolean border = false
- end type
- event clicked;call super::clicked;dw_1.SetFilter('')
- dw_1.Filter()
- dw_1.AcceptText()
- if (dw_1.RowCount() <= 0) then return
- string arg_msg
- if (wf_chk(ref arg_msg) <> 1) then
- OpenWithParm(w_message_err, arg_msg)
- return
- end if
- long findRow, ifSend = 0
- string findStr, postscript
- findStr = 'editable = 1 and (dealflag = 1 or dealflag = 2)' // 1-同意变更 2-拒绝
- findRow = dw_1.Find(findStr, 1, dw_1.RowCount())
- if (findRow > 0) then // 存在回复项
- ifSend = 1
-
- findStr = 'editable = 1 and dealflag = 1' // 1-同意变更
- findRow = dw_1.Find(findStr, 1, dw_1.RowCount())
- if (findRow > 0) then
- if (f_find_fx_user_power(51, ref arg_msg) <> 1) then // 51-采购订单交期变更确认
- MessageBox('权限提示', arg_msg)
- return
- end if
- end if
-
- findStr = 'editable = 1 and dealflag = 2' // 2-拒绝
- findRow = dw_1.Find(findStr, 1, dw_1.RowCount())
- if (findRow > 0) then
- if (f_find_fx_user_power(52, ref arg_msg) <> 1) then // 52-采购订单交期变更拒绝
- MessageBox('权限提示', arg_msg)
- return
- end if
- end if
-
- s_open_packet s_ret
- OpenWithParm(w_packet_msg_edit_fx, arg_msg)
- s_ret = Message.PowerObjectParm
- if (s_ret.returnflag = 0) then
- MessageBox('提示', '操作取消')
- return
- end if
-
- postscript = s_ret.postscript
- if IsNull(postscript) then
- postscript = ''
- end if
- if (Len(postscript) > 500) then
- MessageBox('提示', '留言板信息超长(500),请进行删减')
- return
- end if
- end if
- long i
- oleobject parm, ReqList, item
- parm = FXAppCom.CreatePbDictionary()
- ReqList = FXAppCom.NewPBArray()
- for i = 1 to dw_1.RowCount()
- // 选取变更项:可编辑、1-同意/2-拒绝/3-暂不处理
- if (dw_1.Object.editable[i] = 0) then continue // 不可编辑
- if (dw_1.Object.dealflag[i] = 0) then continue // 0-未处理
-
- item = FXAppCom.CreatePbDictionary()
- item.SetString('serialnumstr', dw_1.Object.SerialNum[i])
- item.SetInt('scid', dw_1.Object.scid[i])
- item.SetInt('taskid', dw_1.Object.taskid[i])
- item.SetString('taskcode', dw_1.Object.taskcode[i])
- item.SetString('tid', dw_1.Object.tid[i])
- item.SetInt('printid', dw_1.Object.printid[i])
- item.SetInt('dealflag', dw_1.Object.dealflag[i])
- item.SetInt('ifmatch', dw_1.Object.ifmatch[i])
- item.SetDateTime('rqdate_re', dw_1.Object.rqdate_re[i])
- item.SetString('reason_re', dw_1.Object.reason_re[i])
-
- ReqList.AddObject(item)
- next
- parm.SetString('token', app_token_fx)
- parm.SetString('sendcusid', s_tran.sendcusid)
- parm.SetInt('receivereltype', s_tran.receivereltype)
- parm.SetInt('receiverelid', s_tran.receiverelid)
- parm.SetString('postscript', postscript)
- parm.SetInt('ifsend', ifSend)
- parm.SetObject('reqlist', ReqList)
- FXAppCom.ReBuytaskRqdate(parm, ref arg_msg)
- if (arg_msg <> '') then
- MessageBox('提示', '回复交期变更信息失败:' + arg_msg)
- else
- MessageBox('提示', '操作成功')
- Close(parent)
- end if
- end event
- type cbx_ch_all from checkbox within w_buytask_rqdate_rece_fx
- integer x = 27
- integer y = 200
- integer width = 206
- integer height = 60
- 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 = "全选"
- end type
- event clicked;long ch
- if (this.Checked) then
- ch = 1
- else
- ch = 0
- end if
- long i
- for i = 1 to dw_1.RowCount()
- if (dw_1.Object.editable[i] = 1) then
- dw_1.Object.ch[i] = ch
- end if
- next
- end event
- type st_1 from statictext within w_buytask_rqdate_rece_fx
- integer x = 315
- integer y = 204
- integer width = 315
- 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 st_comname from statictext within w_buytask_rqdate_rece_fx
- integer x = 617
- integer y = 204
- integer width = 795
- 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 cb_retrieve from uo_imflatbutton within w_buytask_rqdate_rece_fx
- integer width = 151
- integer height = 164
- integer taborder = 30
- boolean bringtotop = true
- string text = "刷新"
- string normalpicname = "refresh.bmp"
- integer picsize = 16
- toolbaralignment pic_align = alignattop!
- boolean border = false
- end type
- event clicked;call super::clicked;wf_retrieve()
- end event
|