w_saletask_tc_edit.srw 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835
  1. $PBExportHeader$w_saletask_tc_edit.srw
  2. forward
  3. global type w_saletask_tc_edit from w_pageretr_ch
  4. end type
  5. type cb_del from uo_imflatbutton within w_saletask_tc_edit
  6. end type
  7. type cb_edit from uo_imflatbutton within w_saletask_tc_edit
  8. end type
  9. type cb_add from uo_imflatbutton within w_saletask_tc_edit
  10. end type
  11. type dw_1 from u_dw_rbtnfilter within w_saletask_tc_edit
  12. end type
  13. type cb_ch_ywy from uo_imflatbutton within w_saletask_tc_edit
  14. end type
  15. type cb_cmpl from uo_imflatbutton within w_saletask_tc_edit
  16. end type
  17. end forward
  18. global type w_saletask_tc_edit from w_pageretr_ch
  19. integer width = 3995
  20. integer height = 2380
  21. string title = "销售订单提成编辑"
  22. boolean minbox = true
  23. boolean maxbox = true
  24. windowtype windowtype = popup!
  25. windowstate windowstate = maximized!
  26. event ue_viewprint ( )
  27. event ue_print ( )
  28. event ue_ch_outrepdef ( )
  29. cb_del cb_del
  30. cb_edit cb_edit
  31. cb_add cb_add
  32. dw_1 dw_1
  33. cb_ch_ywy cb_ch_ywy
  34. cb_cmpl cb_cmpl
  35. end type
  36. global w_saletask_tc_edit w_saletask_tc_edit
  37. type variables
  38. boolean if_del
  39. long cur_scid
  40. long cur_taskid
  41. //uo_order_ml obj_order
  42. string ins_sqlerrtext
  43. String ls_newname = ''
  44. Long ll_prownum
  45. Long ls_powerid
  46. Int li_auditprint
  47. String ls_rpname = ''
  48. Long ls_msgprintid_rpt = 0
  49. end variables
  50. forward prototypes
  51. public subroutine wf_facechange ()
  52. end prototypes
  53. event ue_viewprint();//IF NOT f_power_ind(1360) THEN
  54. // MessageBox('提示','你没有使用权限!',information!,OK!)
  55. // RETURN
  56. //END IF
  57. //
  58. //Long LS_ROW,ll_mx
  59. //String ls_ll_cardid
  60. //String ls_msg
  61. //Long ls_msgprintid
  62. //String ls_parms[]
  63. //Long ll_cardid[]
  64. //
  65. //ls_msgprintid = Message.LongParm
  66. //
  67. //
  68. //SELECT dft_new_dwname,powerid,auditprint,prownum
  69. // INTO :ls_newname,:ls_powerid,:li_auditprint,:ll_prownum
  70. // FROM sys_dft_dwprint_dynamic
  71. // Where sys_dft_dwprint_dynamic.dwprintid = :ls_msgprintid USING sqlca;
  72. //IF sqlca.SQLCode <> 0 THEN
  73. // ls_newname = ''
  74. // ls_powerid = 0
  75. //END IF
  76. //
  77. //
  78. //ll_mx = 0
  79. //ls_msg = ''
  80. //dw_pageretr.AcceptText()
  81. //FOR LS_ROW = 1 TO dw_pageretr.RowCount()
  82. // IF dw_pageretr.Object.isselect[LS_ROW] = 1 THEN
  83. // ll_mx ++
  84. // ls_parms[ll_mx] = String(dw_pageretr.Object.cardid[LS_ROW])
  85. // ll_cardid[ll_mx] = dw_pageretr.Object.cardid[LS_ROW]
  86. // END IF
  87. //NEXT
  88. //
  89. //IF ls_msg <> '' THEN
  90. // MessageBox('错误',ls_msg,stopsign!,OK!)
  91. // RETURN
  92. //END IF
  93. //
  94. //S_print_MSG LS_PRMSG
  95. //IF ls_newname <> '' THEN
  96. // LS_PRMSG.obj_dwNAME = ls_newname
  97. //ELSE
  98. // LS_PRMSG.obj_dwNAME = 'dw_rp_saletaskmx_card_print'
  99. //END IF
  100. //
  101. //LS_PRMSG.TAG_TEXT = '流程卡打印'
  102. //LS_PRMSG.FILTER_STRING = ''
  103. //LS_PRMSG.retr_pram_falg = 17
  104. //LS_PRMSG.PAGECH_FLAG = 0
  105. //LS_PRMSG.retr_scid = cur_scid
  106. //LS_PRMSG.a_string_arr = ls_parms
  107. //LS_PRMSG.rowcnt = ll_mx
  108. //OpenWithParm(w_publ_preview,LS_PRMSG)
  109. //
  110. //
  111. //String arg_msg
  112. //printnum = Message.DoubleParm
  113. //IF printnum > 0 THEN
  114. // FOR LS_ROW = 1 TO ll_mx
  115. // f_update_printnum('u_saletaskmx_card',printnum,cur_scid,ll_cardid[LS_ROW],'','',arg_msg,TRUE)
  116. // NEXT
  117. // CHOOSE CASE sys_option_saletask_sc_card2
  118. // CASE 1
  119. // IF MessageBox ("询问","打印是否成功?成功则确认当前选定流程卡",Question!,YesNo! ) = 1 THEN
  120. // cb_audit.TriggerEvent(Clicked!)
  121. // END IF
  122. // CASE 2
  123. // cb_audit.TriggerEvent(Clicked!)
  124. // END CHOOSE
  125. //END IF
  126. //
  127. //cb_refresh.TriggerEvent(Clicked!)
  128. end event
  129. event ue_print();//IF NOT f_power_ind(1360) THEN
  130. // MessageBox('提示','你没有使用权限!',information!,OK!)
  131. // RETURN
  132. //END IF
  133. //
  134. //Long LS_ROW,ll_cardid[]
  135. //Long ll_sptid,printid
  136. //String ls_taskcode
  137. //String ls_printid
  138. //String ls_parms[]
  139. //String ls_msg
  140. //Long ll_mx
  141. //Long ls_msgprintid
  142. //s_saletaskmx s_mx[]
  143. //ls_msgprintid = Message.LongParm
  144. //
  145. //
  146. //SELECT dft_new_dwname,powerid,auditprint,prownum
  147. // INTO :ls_newname,:ls_powerid,:li_auditprint,:ll_prownum
  148. // FROM sys_dft_dwprint_dynamic
  149. // Where sys_dft_dwprint_dynamic.dwprintid = :ls_msgprintid USING sqlca;
  150. //IF sqlca.SQLCode <> 0 THEN
  151. // ls_newname = ''
  152. // ls_powerid = 0
  153. //END IF
  154. //
  155. //
  156. //
  157. //ll_mx = 0
  158. //ls_msg = ''
  159. //dw_pageretr.AcceptText()
  160. //FOR LS_ROW = 1 TO dw_pageretr.RowCount()
  161. // IF dw_pageretr.Object.isselect[LS_ROW] = 1 THEN
  162. // ll_mx ++
  163. // ls_parms[ll_mx] = String(dw_pageretr.Object.cardid[LS_ROW])
  164. // ll_cardid[ll_mx] = dw_pageretr.Object.cardid[LS_ROW]
  165. // END IF
  166. //NEXT
  167. //
  168. //
  169. //IF ls_msg <> '' THEN
  170. // MessageBox('错误',ls_msg,stopsign!,OK!)
  171. // RETURN
  172. //END IF
  173. //
  174. //IF ll_mx = 0 THEN
  175. // MessageBox('提示','请选择要打印的目标单据!',information!,OK!)
  176. // RETURN
  177. //END IF
  178. //
  179. //S_print_MSG LS_PRMSG
  180. //
  181. //
  182. //IF ls_newname <> '' THEN
  183. // LS_PRMSG.obj_dwNAME = ls_newname
  184. //ELSE
  185. // LS_PRMSG.obj_dwNAME = 'dw_rp_saletaskmx_card_print'
  186. //END IF
  187. //
  188. //
  189. //
  190. //uo_print_preview uo_print
  191. //LS_PRMSG.TAG_TEXT = '流程卡打印'
  192. //LS_PRMSG.FILTER_STRING = ''
  193. //LS_PRMSG.retr_pram_falg = 17
  194. //LS_PRMSG.PAGECH_FLAG = 0
  195. //LS_PRMSG.retr_scid = cur_scid
  196. //LS_PRMSG.a_string_arr = ls_parms
  197. //LS_PRMSG.rowcnt = ll_mx
  198. //uo_print.FACT_PRINT_MSG = LS_PRMSG
  199. //
  200. //String arg_msg
  201. //IF uo_print.uof_print_begin(arg_msg) = 0 THEN
  202. // MessageBox("错误",arg_msg,stopsign!,OK!)
  203. // RETURN
  204. //END IF
  205. //uo_print.ds_print()
  206. //
  207. //
  208. //
  209. //FOR LS_ROW = 1 TO ll_mx
  210. //
  211. // f_update_printnum('u_saletaskmx_card',1,cur_scid,ll_cardid[LS_ROW],'','',arg_msg,TRUE)
  212. //NEXT
  213. //
  214. //
  215. //CHOOSE CASE sys_option_saletask_sc_card2
  216. // CASE 1
  217. // IF MessageBox ("询问","打印是否成功?成功则确认当前选定流程卡",Question!,YesNo! ) = 1 THEN
  218. // cb_audit.TriggerEvent(Clicked!)
  219. // END IF
  220. // CASE 2
  221. // cb_audit.TriggerEvent(Clicked!)
  222. //END CHOOSE
  223. //
  224. //cb_refresh.TriggerEvent(Clicked!)
  225. end event
  226. event ue_ch_outrepdef();IF not dw_edit_mode THEN return
  227. Long i, ll_row
  228. ll_row = dw_pageretr.GetRow()
  229. IF Not IsValid(w_outrepdef_edit_ch_arr) THEN
  230. Open(w_outrepdef_edit_ch_arr)
  231. s_outrepdef_arr s_outrep_ch
  232. s_outrep_ch = Message.PowerObjectParm
  233. FOR i = 1 To UpperBound(s_outrep_ch.outrepname)
  234. //if isnull(s_outrep_ch.outrepname[i]) then s_outrep_ch.outrepname[i] = ''
  235. IF s_outrep_ch.outrepname[i] <> '' THEN //正常返回值则可以取以下值
  236. IF dw_pageretr.Find("outrepname = '"+s_outrep_ch.outrepname[i]+"'", 1, dw_pageretr.RowCount()) <= 0 THEN
  237. IF dw_pageretr.GetRow() > 0 THEN
  238. IF dw_pageretr.Object.outrepname[ll_row] <> '' THEN
  239. ll_row = dw_pageretr.InsertRow (0)
  240. ELSE
  241. ll_row = dw_pageretr.GetRow()
  242. END IF
  243. ELSE
  244. ll_row = dw_pageretr.InsertRow (0)
  245. END IF
  246. dw_pageretr.Object.outrepname[ll_row] = s_outrep_ch.outrepname[i]
  247. END IF
  248. END IF
  249. NEXT
  250. END IF
  251. end event
  252. public subroutine wf_facechange ();
  253. IF dw_edit_mode THEN
  254. cb_refresh.Enabled = FALSE
  255. cb_del.Enabled = TRUE
  256. cb_add.Enabled = TRUE
  257. cb_ch_ywy.Enabled = TRUE
  258. cb_cmpl.Enabled = TRUE
  259. dw_pageretr.RBUTTON_FILTER_USE = FALSE //右键查询功能开关
  260. dw_pageretr.titleclick_sort_use = FALSE //单击标题排序功能开关
  261. dw_1.RBUTTON_FILTER_USE = FALSE //右键查询功能开关
  262. dw_1.titleclick_sort_use = FALSE //单击标题排序功能开关
  263. cb_edit.Text = "放弃&E"
  264. cb_edit.normalpicname = 'Undo.bmp'
  265. ELSE
  266. cb_refresh.Enabled = TRUE
  267. cb_del.Enabled = FALSE
  268. cb_add.Enabled = FALSE
  269. cb_ch_ywy.Enabled = FALSE
  270. cb_cmpl.Enabled = FALSE
  271. dw_pageretr.RBUTTON_FILTER_USE = TRUE //右键查询功能开关
  272. dw_pageretr.titleclick_sort_use = TRUE //单击标题排序功能开关
  273. dw_1.RBUTTON_FILTER_USE = TRUE //右键查询功能开关
  274. dw_1.titleclick_sort_use = TRUE //单击标题排序功能开关
  275. cb_edit.Text = "修改&E"
  276. cb_edit.normalpicname = 'OPEN.bmp'
  277. END IF
  278. Long i
  279. IF dw_edit_mode THEN
  280. dw_pageretr.SetTabOrder ('outrepname',10 )
  281. dw_pageretr.SetTabOrder ('rate',20 )
  282. dw_1.SetTabOrder ('u_saletaskmx_gbotheramt',10 )
  283. ELSE
  284. dw_pageretr.SetTabOrder ('outrepname',0 )
  285. dw_pageretr.SetTabOrder ('rate',0 )
  286. dw_1.SetTabOrder ('u_saletaskmx_gbotheramt',0 )
  287. END IF
  288. cb_edit.of_init_draw()
  289. cb_edit.of_paint()
  290. cb_edit.TriggerEvent('ue_textchange')
  291. end subroutine
  292. on w_saletask_tc_edit.create
  293. int iCurrent
  294. call super::create
  295. this.cb_del=create cb_del
  296. this.cb_edit=create cb_edit
  297. this.cb_add=create cb_add
  298. this.dw_1=create dw_1
  299. this.cb_ch_ywy=create cb_ch_ywy
  300. this.cb_cmpl=create cb_cmpl
  301. iCurrent=UpperBound(this.Control)
  302. this.Control[iCurrent+1]=this.cb_del
  303. this.Control[iCurrent+2]=this.cb_edit
  304. this.Control[iCurrent+3]=this.cb_add
  305. this.Control[iCurrent+4]=this.dw_1
  306. this.Control[iCurrent+5]=this.cb_ch_ywy
  307. this.Control[iCurrent+6]=this.cb_cmpl
  308. end on
  309. on w_saletask_tc_edit.destroy
  310. call super::destroy
  311. destroy(this.cb_del)
  312. destroy(this.cb_edit)
  313. destroy(this.cb_add)
  314. destroy(this.dw_1)
  315. destroy(this.cb_ch_ywy)
  316. destroy(this.cb_cmpl)
  317. end on
  318. event ue_before_open;call super::ue_before_open;if_ue_retr=true
  319. if_ue_sort=true
  320. //uo_task = create uo_saletask
  321. //uo_task.commit_transaction = sqlca
  322. end event
  323. event ue_usual_query_filt;call super::ue_usual_query_filt;string obj_expr=''
  324. if trim(sle_usual_query.text)<>'' then
  325. IF POS(trim(sle_usual_query.text),'%')=0 THEN
  326. obj_expr=obj_expr+'( u_mtrldef_mtrlcode LIKE "%'+trim(sle_usual_query.text)+'%" )'
  327. ELSE
  328. obj_expr=obj_expr+'( u_mtrldef_mtrlcode LIKE "'+trim(sle_usual_query.text)+'" )'
  329. END IF
  330. end if
  331. dw_pageretr.setfilter(obj_expr)
  332. dw_pageretr.SetRedraw(False)
  333. dw_pageretr.filter()
  334. if dw_pageretr.rowcount()>=1 then
  335. dw_pageretr.selectrow(0,false)
  336. dw_pageretr.selectrow(1,true )
  337. end if
  338. dw_pageretr.SetRedraw(TRUE )
  339. end event
  340. event ue_usual_query_retr;call super::ue_usual_query_retr;string ls_querystrpart=''
  341. ls_newselect=lower(ori_oldselect)
  342. if trim(sle_usual_query.text)<>'' then
  343. if pos(trim(sle_usual_query.text),'%')=0 then
  344. ls_querystrpart=" u_mtrldef.mtrlcode like '%"+trim(sle_usual_query.text)+"%'"
  345. else
  346. ls_querystrpart=" u_mtrldef.mtrlcode like '"+trim(sle_usual_query.text)+"'"
  347. end if
  348. if Pos(ls_newselect," where ") <> 0 then
  349. ls_newselect=ls_newselect+" AND ("+ls_querystrpart+')'
  350. else
  351. ls_newselect=ls_newselect+" where ("+ls_querystrpart+')'
  352. end if
  353. end if
  354. wf_retrieveuc(dw_pageretr,ls_newselect,1)
  355. this.triggerevent('retrieve_pageretr')
  356. end event
  357. event open;THIS.TriggerEvent('ue_before_open')
  358. wf_movetocenter()
  359. OLD_TITLE = THIS.Title
  360. s_tran = Message.PowerObjectParm
  361. IF NOT IsNull(s_tran) THEN
  362. retrieve_all = TRUE
  363. cur_scid = s_tran.b_long
  364. cur_taskid = s_tran.c_long
  365. END IF
  366. dw_pageretr.SetTransObject (sqlca)
  367. dw_1.SetTransObject (sqlca)
  368. //pkcolumndbtname = wf_get_pkcolumndbtname(dw_pageretr) //取第一列为关键字
  369. //
  370. //ori_oldselect = dw_pageretr.Describe("DataWindow.Table.Select")
  371. //ls_newselect = ori_oldselect
  372. //ds_curquery = CREATE DATASTORE
  373. //ds_curquery.DataObject = 'd_extr_find'
  374. //ds_curquery.SetTransObject (sqlca)
  375. //
  376. //wf_editindex_lockf()
  377. cb_refresh.triggerevent(clicked!)
  378. end event
  379. event resize;call super::resize;dw_pageretr.height = this.height - dw_pageretr.y - 140
  380. dw_1.width = this.width - dw_1.x - 40
  381. dw_1.height = this.height - dw_1.y - 140
  382. end event
  383. event close;call super::close;IF IsValid(s_sys_win_open[102].win) THEN
  384. s_sys_win_open[102].win.TriggerEvent('retrieve_childdw')
  385. END IF
  386. end event
  387. type cb_func from w_pageretr_ch`cb_func within w_saletask_tc_edit
  388. boolean visible = false
  389. end type
  390. type cb_exit from w_pageretr_ch`cb_exit within w_saletask_tc_edit
  391. integer x = 1239
  392. string text = "退出"
  393. end type
  394. event cb_exit::clicked;IF dw_edit_mode THEN
  395. IF MessageBox ("询问","是否确定不保存退出",Question!,YesNo! ) = 2 THEN RETURN
  396. END IF
  397. Close(PARENT)
  398. end event
  399. type sle_usual_query from w_pageretr_ch`sle_usual_query within w_saletask_tc_edit
  400. boolean visible = false
  401. integer x = 197
  402. integer y = 184
  403. end type
  404. type cb_retrieveall from w_pageretr_ch`cb_retrieveall within w_saletask_tc_edit
  405. boolean visible = false
  406. integer x = 1413
  407. end type
  408. type em_pagerowno from w_pageretr_ch`em_pagerowno within w_saletask_tc_edit
  409. boolean visible = false
  410. integer x = 1115
  411. integer y = 32
  412. end type
  413. type dw_pageretr from w_pageretr_ch`dw_pageretr within w_saletask_tc_edit
  414. integer y = 180
  415. integer width = 1061
  416. integer height = 2080
  417. string dataobject = "dw_saletaskmx_ywymx_edit"
  418. boolean rbutton_filter_use = true
  419. boolean rbutton_setposition_use = true
  420. boolean titleclick_sort_use = true
  421. end type
  422. event dw_pageretr::dberror;call super::dberror;ins_sqlerrtext=sqlerrtext
  423. return 1
  424. end event
  425. event dw_pageretr::doubleclicked;PARENT.TriggerEvent('ue_ch_outrepdef')
  426. end event
  427. event dw_pageretr::dwnkey;call super::dwnkey;IF KeyDown(keydownarrow!) THEN
  428. Long li_row
  429. IF This.GetRow() = This.RowCount() THEN
  430. li_row = This.InsertRow(0)
  431. This.SelectRow(0, False)
  432. This.SetRow(li_row)
  433. This.SelectRow(li_row, True)
  434. END IF
  435. ELSEIF KeyDown(keyenter!) THEN
  436. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  437. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  438. RETURN 1
  439. END IF
  440. end event
  441. event dw_pageretr::clicked;IF row > 0 THEN
  442. This.SelectRow(0, False)
  443. This.SetRow(row)
  444. This.SelectRow(row, True)
  445. END IF
  446. end event
  447. event dw_pageretr::rowfocuschanging;//
  448. end event
  449. event dw_pageretr::rowfocuschanged;IF currentrow > 0 THEN
  450. THIS.SelectRow(0,FALSE)
  451. THIS.SelectRow(currentrow,TRUE)
  452. END IF
  453. end event
  454. type st_1 from w_pageretr_ch`st_1 within w_saletask_tc_edit
  455. boolean visible = false
  456. integer x = 18
  457. end type
  458. type cb_nextpage from w_pageretr_ch`cb_nextpage within w_saletask_tc_edit
  459. boolean visible = false
  460. integer x = 1563
  461. end type
  462. type cb_choice from w_pageretr_ch`cb_choice within w_saletask_tc_edit
  463. boolean visible = false
  464. integer x = 814
  465. integer taborder = 120
  466. end type
  467. type cb_refresh from w_pageretr_ch`cb_refresh within w_saletask_tc_edit
  468. end type
  469. event cb_refresh::clicked;dw_pageretr.SetRedraw(False)
  470. dw_pageretr.Retrieve(cur_scid, cur_taskid)
  471. dw_pageretr.SetRedraw(True)
  472. dw_1.SetRedraw(False)
  473. dw_1.Retrieve(cur_scid, cur_taskid)
  474. dw_1.SetRedraw(True)
  475. end event
  476. type cb_help from w_pageretr_ch`cb_help within w_saletask_tc_edit
  477. boolean visible = false
  478. integer x = 1531
  479. end type
  480. type ln_bar from w_pageretr_ch`ln_bar within w_saletask_tc_edit
  481. end type
  482. type ln_bar2 from w_pageretr_ch`ln_bar2 within w_saletask_tc_edit
  483. end type
  484. type r_bar from w_pageretr_ch`r_bar within w_saletask_tc_edit
  485. integer x = 2949
  486. end type
  487. type ln_1 from w_pageretr_ch`ln_1 within w_saletask_tc_edit
  488. boolean visible = false
  489. integer beginy = 252
  490. integer endy = 252
  491. end type
  492. type ln_2 from w_pageretr_ch`ln_2 within w_saletask_tc_edit
  493. boolean visible = false
  494. integer beginy = 256
  495. integer endy = 256
  496. end type
  497. type cb_del from uo_imflatbutton within w_saletask_tc_edit
  498. integer x = 535
  499. integer width = 155
  500. integer height = 164
  501. integer taborder = 70
  502. boolean bringtotop = true
  503. boolean enabled = false
  504. string text = "删除"
  505. string normalpicname = "delete.bmp"
  506. integer picsize = 16
  507. toolbaralignment pic_align = alignattop!
  508. boolean border = false
  509. end type
  510. event clicked;call super::clicked;IF NOT dw_edit_mode THEN
  511. MessageBox('系统提示','非编辑状态下不可用')
  512. RETURN
  513. END IF
  514. IF MessageBox ("询问","是否确定要删除当前细目记录?",Question!,YesNo! ) = 2 THEN RETURN
  515. IF dw_pageretr.GetRow() = 0 THEN
  516. MessageBox('提示','请选择删除的行对象!')
  517. RETURN
  518. END IF
  519. if_del = TRUE
  520. Long ll_i
  521. dw_pageretr.SetRedraw(FALSE)
  522. FOR ll_i = dw_pageretr.RowCount() TO 1 STEP -1
  523. IF dw_pageretr.IsSelected(ll_i) THEN
  524. dw_pageretr.DeleteRow (ll_i)
  525. END IF
  526. NEXT
  527. dw_pageretr.SetRedraw(TRUE)
  528. if_del = FALSE
  529. IF dw_pageretr.RowCount() = 0 THEN dw_pageretr.InsertRow(0)
  530. dw_pageretr.TriggerEvent (RowFocusChanged!)
  531. end event
  532. type cb_edit from uo_imflatbutton within w_saletask_tc_edit
  533. integer x = 343
  534. integer width = 192
  535. integer height = 164
  536. integer taborder = 50
  537. boolean bringtotop = true
  538. string text = "修改&E"
  539. string normalpicname = "OPEN.bmp"
  540. integer picsize = 16
  541. toolbaralignment pic_align = alignattop!
  542. boolean border = false
  543. end type
  544. event clicked;call super::clicked;IF NOT f_power_ind(1359) THEN
  545. MessageBox('提示','你没有使用权限!',information!,OK!)
  546. RETURN
  547. END IF
  548. IF dw_edit_mode THEN
  549. cb_refresh.TriggerEvent(Clicked!)
  550. END IF
  551. dw_edit_mode = NOT dw_edit_mode
  552. wf_facechange()
  553. end event
  554. type cb_add from uo_imflatbutton within w_saletask_tc_edit
  555. integer x = 151
  556. integer width = 192
  557. integer height = 164
  558. integer taborder = 60
  559. boolean bringtotop = true
  560. boolean enabled = false
  561. string text = "保存&S"
  562. string normalpicname = "Save.bmp"
  563. integer picsize = 16
  564. toolbaralignment pic_align = alignattop!
  565. boolean border = false
  566. end type
  567. event clicked;call super::clicked;Int rslt = 1
  568. String arg_msg
  569. Long i, cnt
  570. dw_pageretr.AcceptText()
  571. dw_1.AcceptText()
  572. uo_saletask uo_task
  573. uo_task = Create uo_saletask
  574. s_saletaskmx s_mx[]
  575. s_saletaskmx_outrep s_mx_rep[]
  576. cnt = 0
  577. FOR i = 1 To dw_1.RowCount()
  578. cnt ++
  579. s_mx[cnt].printid = dw_1.Object.u_saletaskmx_printid[i]
  580. s_mx[cnt].gbrate = dw_1.Object.u_saletaskmx_gbrate[i]
  581. s_mx[cnt].gbotheramt = dw_1.Object.u_saletaskmx_gbotheramt[i]
  582. NEXT
  583. cnt = 0
  584. FOR i = 1 To dw_pageretr.RowCount()
  585. cnt ++
  586. s_mx_rep[cnt].outrepname = dw_pageretr.Object.outrepname[i]
  587. s_mx_rep[cnt].rate = dw_pageretr.Object.rate[i]
  588. s_mx_rep[cnt].amt = dw_pageretr.Object.amt[i]
  589. NEXT
  590. IF uo_task.uof_add_tc(cur_scid, cur_taskid, s_mx, s_mx_rep, arg_msg, True) = 0 THEN
  591. rslt = 0
  592. GOTO ext
  593. END IF
  594. //
  595. //IF dw_pageretr.Update() = -1 THEN
  596. // IF Pos(ins_sqlerrtext,"Cannot insert duplicate key row") > 0 THEN
  597. // ls_errmsg = "关键内容重复"
  598. // ELSE
  599. // ls_errmsg = "因为网络或其他原因>"+ins_sqlerrtext
  600. // END IF
  601. // ROLLBACK;
  602. // MessageBox ('提示',ls_errmsg+",保存操作失败!", Information!, OK! )
  603. // RETURN
  604. //END IF
  605. ext:
  606. Destroy uo_task
  607. IF rslt = 0 THEN
  608. MessageBox ('提示',"保存操作失败!"+arg_msg, Information!, OK! )
  609. RETURN
  610. ELSE
  611. MessageBox ('提示',"保存成功!", Information!, OK! )
  612. dw_edit_mode = Not dw_edit_mode
  613. wf_facechange()
  614. END IF
  615. end event
  616. type dw_1 from u_dw_rbtnfilter within w_saletask_tc_edit
  617. integer x = 1065
  618. integer y = 180
  619. integer width = 2926
  620. integer height = 2080
  621. integer taborder = 20
  622. boolean bringtotop = true
  623. string dataobject = "dw_saletaskmx_dhmx_edit"
  624. end type
  625. event clicked;call super::clicked;IF row > 0 THEN
  626. This.SelectRow(0,False)
  627. This.SetRow(row)
  628. This.SelectRow(row,True)
  629. END IF
  630. end event
  631. type cb_ch_ywy from uo_imflatbutton within w_saletask_tc_edit
  632. integer x = 690
  633. integer width = 274
  634. integer height = 164
  635. integer taborder = 60
  636. boolean bringtotop = true
  637. boolean enabled = false
  638. string text = "选业务员"
  639. string normalpicname = "other.bmp"
  640. integer picsize = 16
  641. toolbaralignment pic_align = alignattop!
  642. boolean border = false
  643. end type
  644. event clicked;call super::clicked;PARENT.TriggerEvent('ue_ch_outrepdef')
  645. end event
  646. type cb_cmpl from uo_imflatbutton within w_saletask_tc_edit
  647. integer x = 965
  648. integer width = 274
  649. integer height = 164
  650. integer taborder = 80
  651. boolean bringtotop = true
  652. boolean enabled = false
  653. string text = "计算提成"
  654. string normalpicname = "ok.bmp"
  655. integer picsize = 16
  656. toolbaralignment pic_align = alignattop!
  657. boolean border = false
  658. end type
  659. event clicked;call super::clicked;IF Not dw_edit_mode THEN RETURN
  660. dw_pageretr.AcceptText()
  661. dw_1.AcceptText()
  662. Long i
  663. Decimal lde_rate_sum, lde_rate
  664. Decimal lde_tcamt_sum, lde_tcamt, lde_restamt
  665. Decimal lde_billtcamt_sum, lde_gbotheramt_sum
  666. //计算总比例(>0)
  667. IF dw_pageretr.RowCount() <= 0 THEN
  668. MessageBox('系统提示','请选择业务员')
  669. RETURN
  670. END IF
  671. FOR i = 1 To dw_pageretr.RowCount()
  672. lde_rate_sum += dw_pageretr.Object.rate[i]
  673. NEXT
  674. IF lde_rate_sum = 0 THEN
  675. MessageBox('系统提示','总分配比例不能为0')
  676. RETURN
  677. END IF
  678. //计算总提成金额
  679. //usaleqty * u_saletaskmx_enprice * u_saletaskmx_rebate
  680. FOR i = 1 To dw_1.RowCount()
  681. lde_billtcamt_sum += (Round((dw_1.Object.usaleqty[i] - dw_1.Object.u_saletaskmx_stopqty[i]) * dw_1.Object.u_saletaskmx_enprice[i] * dw_1.Object.u_saletaskmx_rebate[i], 2)) * dw_1.Object.u_saletaskmx_gbrate[i]
  682. lde_gbotheramt_sum += dw_1.Object.u_saletaskmx_gbotheramt[i]
  683. NEXT
  684. lde_tcamt_sum = lde_billtcamt_sum + lde_gbotheramt_sum
  685. //计算个人提成金额(=个人比例*总提成金额/总比例)(余额分给最后一人)
  686. lde_restamt = lde_tcamt_sum
  687. FOR i = 1 To dw_pageretr.RowCount()
  688. IF i = dw_pageretr.RowCount() THEN
  689. lde_tcamt = lde_restamt
  690. ELSE
  691. lde_rate = dw_pageretr.Object.rate[i]
  692. lde_tcamt = Round(lde_rate * lde_tcamt_sum / lde_rate_sum, 2)
  693. lde_restamt -= lde_tcamt
  694. END IF
  695. dw_pageretr.Object.amt[i] = lde_tcamt
  696. NEXT
  697. end event