w_gz_cwork.srw 29 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129
  1. $PBExportHeader$w_gz_cwork.srw
  2. forward
  3. global type w_gz_cwork from w_publ_1ton_share_detail
  4. end type
  5. type ddlb_status from dropdownlistbox within w_gz_cwork
  6. end type
  7. type st_2 from statictext within w_gz_cwork
  8. end type
  9. end forward
  10. global type w_gz_cwork from w_publ_1ton_share_detail
  11. integer height = 2064
  12. string title = "考勤单"
  13. event ue_add_ps ( )
  14. event ue_fj_edit ( )
  15. event ue_fj_view ( )
  16. ddlb_status ddlb_status
  17. st_2 st_2
  18. end type
  19. global w_gz_cwork w_gz_cwork
  20. type variables
  21. uo_cwork uo_cwork_dq
  22. Int cur_flag = -1
  23. end variables
  24. forward prototypes
  25. public function integer wf_refresh_curuc (long arg_billid)
  26. public subroutine wf_check_billfj ()
  27. public function integer wf_xls_retrievedata (long arg_ationid, ref s_xls_billlist arg_str_billlist, ref uo_sendtoexcel arg_obj_st, ref string arg_msg)
  28. end prototypes
  29. event ue_add_ps();IF dw_edit_mode THEN
  30. MessageBox('提示',"编辑状态下不可以使用!", Information!, OK! )
  31. return
  32. END IF
  33. if not f_power_ind(487) then
  34. messagebox('提示','你没有使用权限!', Information!, OK! )
  35. return
  36. end if
  37. string arg_msg=''
  38. string ls_str
  39. long uc_row
  40. s_inputbox s_sreu
  41. uc_row=dw_pageretr.getrow()
  42. if uc_row<=0 then
  43. messagebox('提示','请选定当前目标单据!', Information!, OK! )
  44. return
  45. end if
  46. s_sreu.title='请输入要批示的内容'
  47. s_sreu.old_text=''
  48. openwithparm(w_inputbox,s_sreu)
  49. ls_str=message.stringparm
  50. if trim(ls_str)='' or isnull(ls_str) then return
  51. if uo_cwork_dq.add_idea(dw_pageretr.object.u_gz_cwork_billid[uc_row],ls_str,arg_msg)=0 then
  52. messagebox('错误',arg_msg, StopSign!, OK! )
  53. return
  54. else
  55. messagebox('提示','添加批示操作成功!', Information!, OK! )
  56. wf_refresh_curuc(dw_pageretr.object.u_gz_cwork_billid[uc_row])
  57. end if
  58. end event
  59. event ue_fj_edit();IF dw_edit_mode THEN
  60. MessageBox('提示','编辑状态下不可用', Information!, OK! )
  61. RETURN
  62. END IF
  63. //IF NOT f_power_ind(1446) THEN
  64. // MessageBox(publ_operator,'你没有使用权限!')
  65. // RETURN
  66. //END IF
  67. s_edit_index_tran s_pic
  68. Long ll_ConnectionID
  69. String arg_msg
  70. Long ls_row
  71. ls_row = dw_uc.GetRow()
  72. IF ls_row <= 0 THEN
  73. RETURN
  74. END IF
  75. IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
  76. MessageBox('提示','没有指定附件数据库连接'+arg_msg, Information!, OK! )
  77. RETURN
  78. END IF
  79. s_pic.f_long = 725 //采购订单的mainID
  80. s_pic.f_string = dw_uc.Object.u_gz_cwork_billcode[ls_row]
  81. s_pic.g_long = dw_uc.Object.u_gz_cwork_billid[ls_row]
  82. s_pic.e_long = 0
  83. s_pic.sqltransaction = sys_filedb_sqlca
  84. OpenWithParm(w_fj_bill_mng,s_pic)
  85. //wf_check_billfj()
  86. end event
  87. event ue_fj_view();IF dw_edit_mode THEN
  88. MessageBox('提示','编辑状态下不可用', Information!, OK! )
  89. RETURN
  90. END IF
  91. s_edit_index_tran s_pic
  92. Long ll_ConnectionID
  93. String arg_msg
  94. Long ls_row
  95. ls_row = dw_uc.GetRow()
  96. IF ls_row <= 0 THEN
  97. RETURN
  98. END IF
  99. IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
  100. MessageBox('提示','没有指定附件数据库连接'+arg_msg, Information!, OK! )
  101. RETURN
  102. END IF
  103. s_pic.f_long = 725 //采购订单的mainID
  104. s_pic.f_string = dw_uc.Object.u_gz_cwork_billcode[ls_row]
  105. s_pic.g_long = dw_uc.Object.u_gz_cwork_billid[ls_row]
  106. s_pic.e_long = 0
  107. s_pic.sqltransaction = sys_filedb_sqlca
  108. OpenWithParm(w_fj_bill_view,s_pic)
  109. end event
  110. public function integer wf_refresh_curuc (long arg_billid);IF arg_billid <= 0 OR IsNull(arg_billid) THEN RETURN 0
  111. Long uc_row
  112. uc_row = dw_pageretr.GetRow()
  113. IF uc_row <= 0 THEN RETURN 0
  114. Long wageid
  115. Long cworkid
  116. String Empcode
  117. DateTime billdate
  118. Decimal amt
  119. Long wagemth
  120. DateTime begindate
  121. DateTime enddate
  122. String reason
  123. String deptidea
  124. String idea
  125. Long empid
  126. String billcode
  127. DateTime moddate
  128. String modemp
  129. DateTime auditdate
  130. Int flag
  131. String auditrep
  132. String opemp
  133. datetime opdate
  134. String Empname
  135. String duty
  136. String departmentname
  137. SELECT u_gz_cwork.wageid,
  138. u_gz_cwork.cworkid,
  139. u_rs_empinfo.Empcode,
  140. u_gz_cwork.billdate,
  141. u_gz_cwork.amt,
  142. u_gz_cwork.wagemth,
  143. u_gz_cwork.begindate,
  144. u_gz_cwork.enddate,
  145. u_gz_cwork.reason,
  146. u_gz_cwork.deptidea,
  147. u_gz_cwork.idea,
  148. u_gz_cwork.empid,
  149. u_gz_cwork.billcode,
  150. u_gz_cwork.moddate,
  151. u_gz_cwork.modemp,
  152. u_gz_cwork.auditdate,
  153. u_gz_cwork.flag,
  154. u_gz_cwork.auditrep,
  155. u_gz_cwork.opemp,
  156. u_gz_cwork.opdate,
  157. u_rs_empinfo.Empname,
  158. u_rs_empinfo.duty,
  159. cw_department.departmentname
  160. INTO :wageid,
  161. :cworkid,
  162. :Empcode,
  163. :billdate,
  164. :amt,
  165. :wagemth,
  166. :begindate,
  167. :enddate,
  168. :reason,
  169. :deptidea,
  170. :idea,
  171. :empid,
  172. :billcode,
  173. :moddate,
  174. :modemp,
  175. :auditdate,
  176. :flag,
  177. :auditrep,
  178. :opemp,
  179. :opdate,
  180. :Empname,
  181. :duty,
  182. :departmentname
  183. FROM u_gz_cwork,
  184. u_rs_empinfo ,
  185. cw_department
  186. WHERE ( u_gz_cwork.empid = u_rs_empinfo.empid )
  187. AND ( u_rs_empinfo.deptid = cw_department.departmentid )
  188. AND ( u_gz_cwork.billid = :arg_billid );
  189. IF sqlca.SQLCode <> 0 THEN
  190. MessageBox('提示',"查询考勤单操作失败"+sqlca.SQLErrText, Information!, OK! )
  191. RETURN 0
  192. END IF
  193. dw_pageretr.Object.u_gz_cwork_billid[uc_row] = arg_billid
  194. dw_pageretr.Object.u_gz_cwork_wageid[uc_row] = wageid
  195. dw_pageretr.Object.u_rs_empinfo_empcode[uc_row] = Empcode
  196. dw_pageretr.Object.u_gz_cwork_billdate[uc_row] = billdate
  197. dw_pageretr.Object.u_gz_cwork_amt[uc_row] = amt
  198. dw_pageretr.Object.u_gz_cwork_reason[uc_row] = reason
  199. dw_pageretr.Object.u_gz_cwork_deptidea[uc_row] = deptidea
  200. dw_pageretr.Object.u_gz_cwork_idea[uc_row] = idea
  201. dw_pageretr.Object.u_gz_cwork_begindate[uc_row] = begindate
  202. dw_pageretr.Object.u_gz_cwork_enddate[uc_row] = enddate
  203. dw_pageretr.Object.u_gz_cwork_empid[uc_row] = empid
  204. dw_pageretr.Object.u_gz_cwork_billcode[uc_row] = billcode
  205. dw_pageretr.Object.u_gz_cwork_wagemth[uc_row] = wagemth
  206. dw_pageretr.Object.u_gz_cwork_moddate[uc_row] = moddate
  207. dw_pageretr.Object.u_gz_cwork_modemp[uc_row] = modemp
  208. dw_pageretr.Object.u_gz_cwork_auditdate[uc_row] = auditdate
  209. dw_pageretr.Object.u_gz_cwork_flag[uc_row] = flag
  210. dw_pageretr.Object.u_gz_cwork_auditrep[uc_row] = auditrep
  211. dw_pageretr.Object.u_gz_cwork_opdate[uc_row] = opdate
  212. dw_pageretr.Object.u_gz_cwork_opemp[uc_row] = opemp
  213. dw_pageretr.Object.u_rs_empinfo_empname[uc_row] = Empname
  214. dw_pageretr.Object.cw_department_departmentname[uc_row] = departmentname
  215. dw_pageretr.Object.u_gz_cwork_cworkid[uc_row] = cworkid
  216. dw_uc.Reset()
  217. dw_pageretr.RowsCopy(dw_pageretr.GetRow(), dw_pageretr.GetRow(), Primary!, dw_uc, 1, Primary!)
  218. dw_uc.ResetUpdate()
  219. dw_uc.SetRedraw(TRUE)
  220. RETURN 1
  221. end function
  222. public subroutine wf_check_billfj ();String arg_msg
  223. Long ll_ConnectionID
  224. Long cur_billtype
  225. long ll_relid,ll_relid_mx,ll_scid
  226. Long ls_filecount = 0
  227. Int rslt = 1
  228. uo_fj_mng_billtype ls_uo_fjbt
  229. ls_uo_fjbt = CREATE uo_fj_mng_billtype
  230. Long row,uc_relid
  231. row = dw_pageretr.GetRow()
  232. IF row > 0 THEN
  233. ll_relid = dw_pageretr.Object.u_gz_cwork_billid[row]
  234. ll_scid = 0
  235. ll_relid_mx = 0
  236. ELSE
  237. rslt = 0
  238. GOTO ext
  239. END IF
  240. IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
  241. rslt = 0
  242. GOTO ext
  243. END IF
  244. cur_billtype = 725 //客户投拆单的 mainiD
  245. ls_uo_fjbt.uf_check_billfj( cur_billtype, ll_relid,ll_relid_mx,ll_scid, sys_fileDB_sqlca, arg_msg, ls_filecount)
  246. IF ls_filecount > 0 THEN
  247. rslt = 1
  248. GOTO ext
  249. ELSE
  250. rslt = 0
  251. GOTO ext
  252. END IF
  253. ext:
  254. wf_encl(rslt)
  255. DESTROY ls_uo_fjbt
  256. end subroutine
  257. public function integer wf_xls_retrievedata (long arg_ationid, ref s_xls_billlist arg_str_billlist, ref uo_sendtoexcel arg_obj_st, ref string arg_msg);//==============================================================================
  258. // 函数: w_publ_1ton_share_detail::wf_xls_retrievedata()
  259. //------------------------------------------------------------------------------
  260. // 描述: 此函数需要 重载,复制祖先范例代码,然后修改retrieve参数部分两处即可
  261. //------------------------------------------------------------------------------
  262. Long LS_ROW,ll_id,i,ll_scid
  263. LS_ROW = dw_uc.GetRow()
  264. IF LS_ROW <= 0 THEN
  265. arg_msg = '没有目标单据!'
  266. RETURN 0
  267. END IF
  268. //修改点:获取 指定retriev参数
  269. ll_id = dw_uc.Object.#1[LS_ROW]
  270. ll_scid = 0
  271. //查询所选模版是否含有图片信息
  272. Long ll_ifpic
  273. Long ll_classid
  274. SELECT ifpic
  275. INTO :ll_ifpic
  276. FROM U_XLS_Templates
  277. Where id = :ll_xls_Templatesid;
  278. IF sqlca.SQLCode <> 0 THEN
  279. ll_ifpic = 0
  280. END IF
  281. Long ll_i,ll_j
  282. Long ll_mtrlid
  283. Long ll_fileid
  284. Blob ls_filedata
  285. SetNull(ls_filedata)
  286. String Pathname,ls_filename,ls_filetype
  287. String errmsg
  288. uo_fj_mng_billtype ls_uo_fjbt
  289. ls_uo_fjbt = CREATE uo_fj_mng_billtype
  290. s_xls_pic_list s_pic //结构数组-用于保存图片路径
  291. IF ll_ifpic = 1 THEN //如果含有图片信息,则查询本类型单据需要带出哪类附件
  292. SELECT classid
  293. INTO :ll_classid
  294. FROM u_billpic_fileclass
  295. Where (billtype = 725);
  296. IF sqlca.SQLCode <> 0 THEN
  297. ll_classid = 0
  298. END IF
  299. IF ll_classid > 0 THEN //如果已经指定好附件类型,则循环明细表查询每个明细的图片信息.
  300. FOR ll_i = 1 TO dw_child.RowCount()
  301. ll_mtrlid = dw_child.Object.mtrlid[ll_i]
  302. //取该附件类型中的第一个附件.
  303. SELECT top 1 fileid,DisplayName,FileType INTO :ll_fileid,:ls_filename,:ls_filetype
  304. FROM u_file
  305. WHERE relid = :ll_mtrlid
  306. AND classid = :ll_classid
  307. AND (filetype = 'bmp' OR filetype = 'rle' OR filetype = 'wmf'
  308. OR filetype = 'tif' OR filetype = 'jpg' OR filetype = 'gif' OR filetype = 'jpeg')
  309. USING sys_fileDB_sqlca;
  310. IF sys_fileDB_sqlca.SQLCode <> 0 THEN
  311. ll_fileid = 0
  312. END IF
  313. IF ll_fileid > 0 THEN
  314. Pathname = sys_cur_path+ins_fjtemppath+'\'+String(Today(),'yymmdd')+String(Now(),'hhmmss')+'_'+ls_filename+'.'+ls_filetype
  315. IF Trim(Pathname) <> '' THEN
  316. IF ls_uo_fjbt.uf_getfjbolb_fromdb( ll_fileid, ls_filedata, sys_fileDB_sqlca, arg_msg) = 0 THEN
  317. RETURN 0
  318. END IF
  319. IF f_saveblobtofile(ls_filedata,Pathname,errmsg) = 0 THEN
  320. RETURN 0
  321. ELSE
  322. s_pic.path[ll_i] = Pathname
  323. //记录临时文件位置,本窗口退出后删除
  324. wf_addlog_tempfilepathname(Pathname)
  325. END IF
  326. ELSE
  327. s_pic.path[ll_i] = ''
  328. END IF
  329. ELSE
  330. s_pic.path[ll_i] = ''
  331. END IF
  332. NEXT
  333. END IF
  334. //
  335. END IF
  336. ////可选设置///
  337. arg_obj_st.uo_const.create_new_pwd( ) //创建随机密码
  338. if sys_option_xls_ifuse_passwd = 1 then arg_obj_st.uo_const.pwd = trim(sys_option_xls_user_passwd) //默认加密密码 默认为随即密码
  339. boolean xls_locked
  340. xls_locked = not (sys_option_xls_lock = 1)
  341. /// Excel 的可选设置
  342. if arg_obj_st.of_setoption(arg_ationid, xls_locked,true,arg_msg) <> 1 then
  343. return 0
  344. end if
  345. for i = 1 to arg_str_billlist.count
  346. ////可选操作///
  347. arg_str_billlist.bill[i].ds_data = create datastore //
  348. arg_str_billlist.bill[i].ds_data.dataobject = arg_str_billlist.bill[i].datawindow //
  349. arg_str_billlist.bill[i].ds_data.settransobject(sqlca)
  350. //修改点:注意retrieve 参数与上文对应
  351. arg_str_billlist.bill[i].ds_data.retrieve(ll_scid,ll_id)
  352. next
  353. return 1
  354. end function
  355. on w_gz_cwork.create
  356. int iCurrent
  357. call super::create
  358. this.ddlb_status=create ddlb_status
  359. this.st_2=create st_2
  360. iCurrent=UpperBound(this.Control)
  361. this.Control[iCurrent+1]=this.ddlb_status
  362. this.Control[iCurrent+2]=this.st_2
  363. end on
  364. on w_gz_cwork.destroy
  365. call super::destroy
  366. destroy(this.ddlb_status)
  367. destroy(this.st_2)
  368. end on
  369. event ue_usual_query_retr;call super::ue_usual_query_retr;string ls_querystrpart=''
  370. ls_newselect=lower(ori_oldselect)
  371. if trim(sle_usual_query.text)<>'' then
  372. if pos(trim(sle_usual_query.text),'%')=0 then
  373. ls_querystrpart="(u_gz_cwork.billcode like '%"+trim(sle_usual_query.text)+"%')"
  374. else
  375. ls_querystrpart="(u_gz_cwork.billcode like '"+trim(sle_usual_query.text)+"')"
  376. end if
  377. if pos(ls_newselect," where ") <> 0 then
  378. ls_newselect=ls_newselect+" and ("+ls_querystrpart+')'
  379. else
  380. ls_newselect=ls_newselect+" where ("+ls_querystrpart+')'
  381. end if
  382. end if
  383. wf_retrieveuc(dw_pageretr,ls_newselect,1)
  384. this.triggerevent('retrieve_pageretr')
  385. end event
  386. event ue_usual_query_filt;call super::ue_usual_query_filt;string obj_expr=''
  387. if trim(sle_usual_query.text)<>'' then
  388. if pos(trim(sle_usual_query.text),'%')=0 then
  389. obj_expr=obj_expr+'( u_gz_cwork_billcode like "%'+trim(sle_usual_query.text)+'%" )'
  390. else
  391. obj_expr=obj_expr+'( u_gz_cwork_billcode like "'+trim(sle_usual_query.text)+'" )'
  392. end if
  393. end if
  394. dw_pageretr.setfilter(obj_expr)
  395. dw_pageretr.setredraw(false)
  396. dw_pageretr.filter()
  397. if dw_pageretr.rowcount()>=1 then
  398. dw_pageretr.selectrow(0,false)
  399. dw_pageretr.selectrow(1,true)
  400. end if
  401. dw_pageretr.setredraw(true)
  402. end event
  403. event close;call super::close;destroy uo_cwork_dq
  404. wf_del_tempfilepathname()
  405. end event
  406. event open;call super::open;uc_column_int=12 //uc dw前6列可以编辑
  407. uo_cwork_dq =create uo_cwork
  408. end event
  409. event refresh_interface;call super::refresh_interface;ddlb_status.enabled=not dw_edit_mode
  410. end event
  411. event retrieve_pageretr;Boolean cb_nextpage_enabled,cb_retrieveall_enabled
  412. Boolean cb_func_enabled,cb_retrieve_enabled
  413. cb_nextpage_enabled = cb_nextpage.Enabled
  414. cb_retrieveall_enabled = cb_retrieveall.Enabled
  415. cb_func_enabled = cb_func.Enabled
  416. cb_nextpage.Enabled = FALSE
  417. cb_retrieveall.Enabled = FALSE
  418. cb_func.Enabled = FALSE
  419. dw_uc.Retrieve()
  420. dw_pageretr.Retrieve(cur_flag)
  421. IF dw_pageretr.RowCount() > 0 THEN
  422. dw_pageretr.SetRow(1)
  423. dw_pageretr.TriggerEvent(RowFocusChanged!)
  424. END IF
  425. THIS.TriggerEvent('retrieve_childdw')
  426. cb_nextpage.Enabled = cb_nextpage_enabled
  427. cb_retrieveall.Enabled = cb_retrieveall_enabled
  428. cb_func.Enabled = cb_func_enabled
  429. end event
  430. event ue_f9;call super::ue_f9;if not dw_edit_mode then return
  431. long uc_row,ls_j
  432. s_empselect s_select
  433. string tmp_empcode
  434. uc_row = dw_uc.getrow()
  435. if uc_row = 0 then
  436. messagebox('提示','请选定借支单!', Information!, OK! )
  437. return
  438. end if
  439. dw_uc.accepttext()
  440. tmp_empcode = trim(dw_uc.object.u_rs_empinfo_empcode[uc_row])
  441. if not isvalid(w_empinfo_choice) then
  442. openwithparm(w_empinfo_choice,tmp_empcode)
  443. s_select = message.powerobjectparm //接受返回结构
  444. if s_select.empid > 0 then
  445. dw_uc.setredraw(false)
  446. dw_uc.object.u_gz_cwork_empid[uc_row] = s_select.empid
  447. dw_uc.object.u_rs_empinfo_empcode[uc_row] = s_select.empcode
  448. dw_uc.object.u_rs_empinfo_empname[uc_row] = s_select.empname
  449. dw_uc.setcolumn('u_gz_cwork_billdate')
  450. dw_uc.setredraw(true)
  451. end if
  452. end if
  453. end event
  454. event ue_viewprint;call super::ue_viewprint;if not f_power_ind(482) then
  455. messagebox('提示','你没有使用权限!', Information!, OK! )
  456. return
  457. end if
  458. Long LS_ROW
  459. LS_ROW = dw_pageretr.GetRow()
  460. IF LS_ROW <= 0 THEN
  461. MessageBox('提示','没有打印目标单据!', Information!, OK! )
  462. RETURN
  463. END IF
  464. S_print_MSG LS_PRMSG
  465. IF ls_newname <> '' THEN
  466. IF li_auditprint = 1 THEN
  467. IF dw_pageretr.Object.u_gz_cwork_flag[dw_pageretr.GetRow()] = 0 THEN
  468. MessageBox('提示','目标单据还未审核,不能打印!', Information!, OK! )
  469. RETURN
  470. END IF
  471. END IF
  472. ls_prmsg.obj_dwNAME = ls_newname
  473. ELSE
  474. ls_prmsg.obj_dwNAME = 'dw_rp_gz_cwork_edit'
  475. END IF
  476. LS_PRMSG.TAG_TEXT = '考勤单'
  477. LS_PRMSG.FILTER_STRING = ''
  478. LS_PRMSG.retr_pram_falg = 2
  479. LS_PRMSG.PAGECH_FLAG = 0
  480. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.u_gz_cwork_billid[LS_ROW]
  481. OpenWithParm(w_publ_preview,LS_PRMSG)
  482. //**更新打印次料
  483. String arg_msg
  484. printnum = Message.DoubleParm
  485. f_update_printnum('u_gz_cwork',printnum,0,dw_pageretr.Object.u_gz_cwork_billid[LS_ROW],'','',arg_msg,TRUE)
  486. end event
  487. event ue_print;call super::ue_print;//--直接打印
  488. IF NOT f_power_ind(482) THEN
  489. MessageBox('提示','你没有使用权限!', Information!, OK! )
  490. RETURN
  491. END IF
  492. uo_print_preview uo_print
  493. S_print_MSG LS_PRMSG
  494. IF dw_pageretr.RowCount() = 0 THEN
  495. MessageBox('提示','没有可打印的单据!', Information!, OK! )
  496. RETURN
  497. END IF
  498. IF MessageBox ("询问","是否确定要打印当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  499. IF ls_newname <> '' THEN
  500. IF li_auditprint = 1 THEN
  501. IF dw_pageretr.Object.u_gz_cwork_flag[dw_pageretr.GetRow()] = 0 THEN
  502. MessageBox('提示','目标单据还未审核,不能打印!', Information!, OK! )
  503. RETURN
  504. END IF
  505. END IF
  506. LS_PRMSG.obj_dwNAME = ls_newname
  507. ELSE
  508. LS_PRMSG.obj_dwNAME = 'dw_rp_gz_cwork_edit'
  509. END IF
  510. LS_PRMSG.retr_pram_falg = 2
  511. LS_PRMSG.TAG_TEXT = '考勤单'
  512. LS_PRMSG.FILTER_STRING = ''
  513. LS_PRMSG.PAGECH_FLAG = 0
  514. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.u_gz_cwork_billid[dw_pageretr.GetRow()]
  515. uo_print.FACT_PRINT_MSG = LS_PRMSG
  516. String arg_msg
  517. IF uo_print.uof_print_begin(arg_msg) = 0 THEN
  518. MessageBox("提示",arg_msg, Information!, OK! )
  519. RETURN
  520. END IF
  521. uo_print.ds_print()
  522. //**更新打印次料
  523. f_update_printnum('u_gz_cwork',1,0,dw_pageretr.Object.u_gz_cwork_billid[dw_pageretr.GetRow()],'','',arg_msg,TRUE)
  524. end event
  525. event ue_addzy;call super::ue_addzy;IF dw_edit_mode THEN
  526. MessageBox('提示',"编辑状态下不可以使用!", Information!, OK! )
  527. return
  528. END IF
  529. if not f_power_ind(485) then
  530. messagebox('提示','你没有使用权限!', Information!, OK! )
  531. return
  532. end if
  533. string arg_msg=''
  534. string ls_str
  535. long uc_row
  536. s_inputbox s_sreu
  537. uc_row=dw_pageretr.getrow()
  538. if uc_row<=0 then
  539. messagebox('提示','请选定当前目标单据!', Information!, OK! )
  540. return
  541. end if
  542. s_sreu.title='请输入要主管部门意见的内容'
  543. s_sreu.old_text=''
  544. openwithparm(w_inputbox,s_sreu)
  545. ls_str=message.stringparm
  546. if trim(ls_str)='' or isnull(ls_str) then return
  547. if uo_cwork_dq.add_deptidea(dw_pageretr.object.u_gz_cwork_billid[uc_row],ls_str,arg_msg)=0 then
  548. messagebox('error!',arg_msg)
  549. return
  550. else
  551. messagebox('提示','添加主管部门意见操作成功!', Information!, OK! )
  552. wf_refresh_curuc(dw_pageretr.object.u_gz_cwork_billid[uc_row])
  553. end if
  554. end event
  555. event resize;ln_bar.endx = this.width
  556. ln_bar2.endx = this.width
  557. r_bar.width = this.width
  558. end event
  559. type cb_func from w_publ_1ton_share_detail`cb_func within w_gz_cwork
  560. end type
  561. type cb_exit from w_publ_1ton_share_detail`cb_exit within w_gz_cwork
  562. integer x = 2267
  563. end type
  564. type sle_usual_query from w_publ_1ton_share_detail`sle_usual_query within w_gz_cwork
  565. integer x = 197
  566. integer width = 530
  567. end type
  568. type cb_retrieveall from w_publ_1ton_share_detail`cb_retrieveall within w_gz_cwork
  569. integer x = 2880
  570. end type
  571. type em_pagerowno from w_publ_1ton_share_detail`em_pagerowno within w_gz_cwork
  572. integer x = 2523
  573. integer width = 320
  574. end type
  575. type dw_pageretr from w_publ_1ton_share_detail`dw_pageretr within w_gz_cwork
  576. event dwnkey pbm_dwnkey
  577. integer x = 1934
  578. integer width = 1609
  579. integer height = 1644
  580. string dataobject = "dw_gz_cwork_index"
  581. end type
  582. event dw_pageretr::dwnkey;call super::dwnkey;Int h = 0
  583. end event
  584. event dw_pageretr::constructor;call super::constructor; titleclick_sort_use=true //单击标题排序功能开关
  585. RBUTTON_FILTER_USE=true //右键查询功能开关
  586. end event
  587. event dw_pageretr::rowfocuschanged;call super::rowfocuschanged;wf_check_billfj()
  588. end event
  589. type st_1 from w_publ_1ton_share_detail`st_1 within w_gz_cwork
  590. integer x = 5
  591. end type
  592. type cb_nextpage from w_publ_1ton_share_detail`cb_nextpage within w_gz_cwork
  593. integer x = 3031
  594. end type
  595. type dw_uc from w_publ_1ton_share_detail`dw_uc within w_gz_cwork
  596. integer width = 1925
  597. integer height = 1640
  598. string dataobject = "dw_gz_cwork_edit"
  599. end type
  600. event dw_uc::dwnkey;PARENT.TriggerEvent('user_key')
  601. IF Key = KeyDownArrow! THEN RETURN 1
  602. IF dw_edit_mode THEN
  603. String ls_empcode
  604. String ls_empname
  605. Long ll_empid,li_row
  606. dw_uc.AcceptText()
  607. li_row = dw_uc.GetRow()
  608. IF dw_uc.GetColumnName ( ) = 'u_rs_empinfo_empcode' AND Key = keyenter! THEN
  609. ls_empcode = Trim(dw_uc.Object.u_rs_empinfo_empcode[li_row])
  610. SELECT empid,empname INTO :ll_empid,:ls_empname FROM u_rs_empinfo Where empcode = :ls_empcode;
  611. dw_uc.SetRedraw(FALSE)
  612. IF sqlca.SQLCode <> 0 THEN
  613. PARENT.TriggerEvent('ue_f9')
  614. RETURN 1
  615. ELSE
  616. dw_uc.Object.u_gz_cwork_empid[li_row] = ll_empid
  617. dw_uc.Object.u_rs_empinfo_empname[li_row] = ls_empname
  618. END IF
  619. dw_uc.SetRedraw(TRUE)
  620. dw_uc.SetColumn("u_gz_cwork_billdate")
  621. RETURN 1
  622. ELSE
  623. IF Key = keyenter! OR Key = KeyDownArrow! THEN //
  624. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  625. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  626. RETURN 1
  627. ELSEIF Key = keyuparrow! THEN
  628. keybd_event ( 16, 0, 0 , 0 )
  629. keybd_event ( 9, 0, 0 , 0 )
  630. keybd_event ( 9, 0, 2, 0 )
  631. keybd_event ( 16, 0, 2, 0 )
  632. RETURN 1
  633. END IF
  634. END IF
  635. END IF
  636. end event
  637. event dw_uc::clicked;call super::clicked;if not dw_edit_mode then return
  638. if row <= 0 then return
  639. if dwo.name='p_p' then
  640. parent.TRIGGEREVENT('ue_f9')
  641. end if
  642. end event
  643. type gb_2 from w_publ_1ton_share_detail`gb_2 within w_gz_cwork
  644. end type
  645. type dw_child from w_publ_1ton_share_detail`dw_child within w_gz_cwork
  646. integer x = 1029
  647. integer y = 2408
  648. integer height = 604
  649. end type
  650. type cb_viewprint from w_publ_1ton_share_detail`cb_viewprint within w_gz_cwork
  651. integer x = 1623
  652. end type
  653. type cb_print from w_publ_1ton_share_detail`cb_print within w_gz_cwork
  654. integer x = 1431
  655. end type
  656. type cb_add from w_publ_1ton_share_detail`cb_add within w_gz_cwork
  657. end type
  658. event cb_add::clicked;if not f_power_ind(211) then
  659. messagebox('提示','你没有使用权限!', Information!, OK! )
  660. return
  661. end if
  662. string arg_msg = ''
  663. long uc_row
  664. if dw_edit_mode then
  665. dw_uc.accepttext()
  666. uc_row = dw_uc.getrow()
  667. if uc_row <= 0 then
  668. messagebox('提示','请选定当前目标单据!', Information!, OK! )
  669. return
  670. end if
  671. if not dw_uc.object.u_gz_cwork_billdate[uc_row] > datetime(2000-01-01,now()) then
  672. messagebox('提示','不合理日期', Information!, OK! )
  673. return
  674. end if
  675. uo_cwork_dq.empid = dw_uc.object.u_gz_cwork_empid[uc_row]
  676. uo_cwork_dq.billdate = dw_uc.object.u_gz_cwork_billdate[uc_row]
  677. uo_cwork_dq.amt = dw_uc.object.u_gz_cwork_amt[uc_row]
  678. uo_cwork_dq.wageid = dw_uc.object.u_gz_cwork_wageid[uc_row]
  679. uo_cwork_dq.reason = dw_uc.object.u_gz_cwork_reason[uc_row]
  680. uo_cwork_dq.deptidea = dw_uc.object.u_gz_cwork_deptidea[uc_row]
  681. uo_cwork_dq.idea = dw_uc.object.u_gz_cwork_idea[uc_row]
  682. uo_cwork_dq.begindate = dw_uc.object.u_gz_cwork_begindate[uc_row]
  683. uo_cwork_dq.enddate = dw_uc.object.u_gz_cwork_enddate[uc_row]
  684. uo_cwork_dq.cworkid = dw_uc.object.u_gz_cwork_cworkid[uc_row]
  685. uo_cwork_dq.wagemth = dw_uc.object.u_gz_cwork_wagemth[uc_row]
  686. if uo_cwork_dq.save(arg_msg,true) = 0 then
  687. messagebox('错误',arg_msg, StopSign!, OK! )
  688. return
  689. end if
  690. // messagebox('提示','保存操作成功!')
  691. //write ini
  692. f_SetProfileString (sys_empid,dw_uc.DataObject, "ddlb_wageid",String(dw_uc.Object.u_gz_cwork_wageid[dw_uc.GetRow()]))
  693. //
  694. long ll_row
  695. ll_row = dw_pageretr.getrow()
  696. dw_pageretr.SelectRow(0,FALSE)
  697. dw_pageretr.SelectRow(ll_row,TRUE)
  698. wf_refresh_curuc(uo_cwork_dq.billid)
  699. else
  700. if uo_cwork_dq.newbegin(arg_msg) = 0 then
  701. messagebox('错误',arg_msg, StopSign!, OK! )
  702. return
  703. end if
  704. end if
  705. call super::clicked
  706. if dw_edit_mode then
  707. //read ini
  708. string ls_wageid
  709. ls_wageid = f_ProfileString (sys_empid,dw_uc.DataObject, "ddlb_wageid",'0')
  710. dw_uc.object.u_gz_cwork_wageid[dw_uc.getrow()]=long(ls_wageid)
  711. dw_uc.object.u_gz_cwork_wagemth[dw_uc.getrow()]=long(string(today(),'yyyymm'))
  712. dw_uc.object.u_gz_cwork_begindate[dw_uc.getrow()]=datetime(today(),time('08:00'))
  713. dw_uc.object.u_gz_cwork_enddate[dw_uc.getrow()]=datetime(today(),time('18:00'))
  714. dw_uc.setcolumn('u_gz_cwork_wageid')
  715. //
  716. else
  717. parent.triggerevent("retrieve_childdw")
  718. end if
  719. this.triggerevent('refresh_interface')
  720. end event
  721. type cb_edit from w_publ_1ton_share_detail`cb_edit within w_gz_cwork
  722. end type
  723. event cb_edit::clicked;if not f_power_ind(211) then
  724. messagebox('提示','你没有使用权限!', Information!, OK! )
  725. return
  726. end if
  727. string arg_msg=''
  728. long uc_row
  729. uc_row=dw_pageretr.getrow()
  730. if uc_row<=0 then
  731. messagebox('提示','请选定当前目标单据!', Information!, OK! )
  732. return
  733. end if
  734. if not dw_edit_mode then
  735. if uo_cwork_dq.updatebegin(dw_pageretr.object.u_gz_cwork_billid[uc_row],arg_msg)=0 then
  736. messagebox('Error!',arg_msg)
  737. return
  738. end if
  739. end if
  740. call super::clicked
  741. end event
  742. type cb_delet from w_publ_1ton_share_detail`cb_delet within w_gz_cwork
  743. end type
  744. event cb_delet::clicked;call super::clicked;if not f_power_ind(628) then
  745. messagebox('提示','你没有使用权限!', Information!, OK! )
  746. return
  747. end if
  748. if dw_edit_mode then return
  749. string arg_msg=''
  750. long uc_row
  751. uc_row=dw_pageretr.getrow()
  752. if uc_row<=0 then
  753. messagebox('提示','请选定当前目标单据!', Information!, OK! )
  754. return
  755. end if
  756. IF MessageBox ("询问","是否确定要删除当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  757. if uo_cwork_dq.del(dw_pageretr.object.u_gz_cwork_billid[uc_row],arg_msg)=0 then
  758. messagebox('错误',arg_msg, StopSign!, OK! )
  759. ELSE
  760. //日志
  761. long ls_id
  762. string ls_code
  763. ls_id=dw_pageretr.object.u_gz_cwork_billid[uc_row]
  764. ls_code=dw_pageretr.object.u_gz_cwork_billcode[uc_row]
  765. f_setsysoplog('考勤单','考勤单删除,id:'+string(ls_id)+',code:'+ls_code,arg_msg,true)
  766. //--
  767. MESSAGEBOX('提示','删除单据'+string(dw_pageretr.object.u_gz_cwork_billcode[uc_row])+'成功!', Information!, OK! )
  768. dw_pageretr.deleterow(uc_row)
  769. dw_pageretr.postevent(rowfocuschanged!)
  770. end if
  771. end event
  772. type cb_addzy from w_publ_1ton_share_detail`cb_addzy within w_gz_cwork
  773. end type
  774. event cb_addzy::clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu
  775. String menustr
  776. menustr="Text=加主管部门意见~tEvent=ue_addzy"
  777. menustr=menustr + "|" + "Text=加批示~tEvent=ue_add_ps"
  778. menustr = menustr + "|" + "Text=-"
  779. menustr = menustr + "|" + "Text=查看附件~tEvent=ue_fj_view"
  780. menustr = menustr + "|" + "Text=添加附件~tEvent=ue_fj_edit"
  781. IF Len(Trim(menustr)) <> 0 THEN
  782. dmPopupMenu = CREATE m_Dfc_Control_PopupMenu
  783. dmPopupMenu.mf_BuildMenu(THIS, menustr)
  784. dmPopupMenu.mf_PopMenu()
  785. DESTROY dmPopupMenu
  786. END IF
  787. end event
  788. type cb_auditing from w_publ_1ton_share_detail`cb_auditing within w_gz_cwork
  789. end type
  790. event cb_auditing::clicked;call super::clicked;IF Not f_power_ind(212) THEN
  791. MessageBox('提示','你没有使用权限!', Information!, OK! )
  792. RETURN
  793. END IF
  794. s_taskwork_abnormity_audit s_audit
  795. OpenWithParm(w_gz_cwork_audit,1)
  796. s_audit = Message.PowerObjectParm
  797. IF s_audit.audit_month = 0 THEN RETURN
  798. String arg_msg
  799. IF uo_cwork_dq.auditing(s_audit.audit_wageid,s_audit.audit_month,arg_msg,True) = 0 THEN
  800. MessageBox('提示','考勤单审核失败,原因>>'+arg_msg, Information!, OK! )
  801. RETURN
  802. END IF
  803. MessageBox('提示','考勤单审核成功', Information!, OK! )
  804. Parent.TriggerEvent('retrieve_pageretr')
  805. end event
  806. type cb_xm from w_publ_1ton_share_detail`cb_xm within w_gz_cwork
  807. boolean visible = false
  808. end type
  809. type cb_retrieve from w_publ_1ton_share_detail`cb_retrieve within w_gz_cwork
  810. end type
  811. type cb_xls from w_publ_1ton_share_detail`cb_xls within w_gz_cwork
  812. integer x = 1815
  813. end type
  814. type cb_help from w_publ_1ton_share_detail`cb_help within w_gz_cwork
  815. integer x = 2117
  816. end type
  817. type cb_auditing_cancel from w_publ_1ton_share_detail`cb_auditing_cancel within w_gz_cwork
  818. end type
  819. event cb_auditing_cancel::clicked;call super::clicked;IF NOT f_power_ind(904) THEN
  820. MessageBox('提示','你没有使用权限!', Information!, OK! )
  821. RETURN
  822. END IF
  823. s_taskwork_abnormity_audit s_audit
  824. OpenWithParm(w_gz_cwork_audit,0)
  825. s_audit = Message.PowerObjectParm
  826. IF s_audit.audit_month = 0 THEN RETURN
  827. String arg_msg
  828. IF uo_cwork_dq.c_auditing(s_audit.audit_wageid,s_audit.audit_month,arg_msg,TRUE) = 0 THEN
  829. MessageBox('提示','考勤单撤审失败,原因>>'+arg_msg, Information!, OK! )
  830. RETURN
  831. END IF
  832. //日志
  833. String ls_month
  834. ls_month = String(s_audit.audit_month)
  835. f_setsysoplog('考勤品单','撤审,月份:'+ls_month,arg_msg,TRUE)
  836. //--
  837. MessageBox('提示','考勤单撤审成功', Information!, OK! )
  838. PARENT.TriggerEvent('retrieve_pageretr')
  839. end event
  840. type p_msg from w_publ_1ton_share_detail`p_msg within w_gz_cwork
  841. end type
  842. type p_help from w_publ_1ton_share_detail`p_help within w_gz_cwork
  843. end type
  844. type p_encl from w_publ_1ton_share_detail`p_encl within w_gz_cwork
  845. end type
  846. type p_other from w_publ_1ton_share_detail`p_other within w_gz_cwork
  847. end type
  848. type gb_3 from w_publ_1ton_share_detail`gb_3 within w_gz_cwork
  849. end type
  850. type ln_bar from w_publ_1ton_share_detail`ln_bar within w_gz_cwork
  851. end type
  852. type ln_bar2 from w_publ_1ton_share_detail`ln_bar2 within w_gz_cwork
  853. end type
  854. type r_bar from w_publ_1ton_share_detail`r_bar within w_gz_cwork
  855. end type
  856. type ln_1 from w_publ_1ton_share_detail`ln_1 within w_gz_cwork
  857. end type
  858. type ln_2 from w_publ_1ton_share_detail`ln_2 within w_gz_cwork
  859. end type
  860. type ddlb_status from dropdownlistbox within w_gz_cwork
  861. integer x = 933
  862. integer y = 188
  863. integer width = 421
  864. integer height = 300
  865. integer taborder = 10
  866. boolean bringtotop = true
  867. integer textsize = -9
  868. integer weight = 400
  869. fontcharset fontcharset = gb2312charset!
  870. fontpitch fontpitch = variable!
  871. string facename = "宋体"
  872. long textcolor = 33554432
  873. string text = "[全部]"
  874. boolean sorted = false
  875. string item[] = {"[全部]","待审核","已审核"}
  876. borderstyle borderstyle = stylelowered!
  877. end type
  878. event selectionchanged;if index=1 then
  879. cur_flag=-1
  880. elseif index=2 then
  881. cur_flag=0
  882. elseif index=3 then
  883. cur_flag=1
  884. end if
  885. parent.triggerevent('retrieve_pageretr')
  886. end event
  887. type st_2 from statictext within w_gz_cwork
  888. integer x = 741
  889. integer y = 204
  890. integer width = 219
  891. integer height = 48
  892. integer textsize = -9
  893. integer weight = 400
  894. fontcharset fontcharset = gb2312charset!
  895. fontpitch fontpitch = variable!
  896. string facename = "宋体"
  897. long textcolor = 33554432
  898. long backcolor = 134217739
  899. string text = "状 态"
  900. boolean focusrectangle = false
  901. end type