w_income_expenses.srw 54 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207
  1. $PBExportHeader$w_income_expenses.srw
  2. forward
  3. global type w_income_expenses from w_publ_1ton_share_detail
  4. end type
  5. type ddlb_status from dropdownlistbox within w_income_expenses
  6. end type
  7. type st_3 from statictext within w_income_expenses
  8. end type
  9. type ddlb_itemflag from dropdownlistbox within w_income_expenses
  10. end type
  11. type st_2 from statictext within w_income_expenses
  12. end type
  13. type ddlb_scid from uo_ddlb_scid within w_income_expenses
  14. end type
  15. type st_4 from statictext within w_income_expenses
  16. end type
  17. type cbx_1 from checkbox within w_income_expenses
  18. end type
  19. end forward
  20. global type w_income_expenses from w_publ_1ton_share_detail
  21. string title = "其它收入支出单"
  22. boolean maxbox = true
  23. windowstate windowstate = maximized!
  24. event ue_dept_ch ( )
  25. event insert_childrow ( )
  26. event ue_fj_edit ( )
  27. event ue_fj_view ( )
  28. ddlb_status ddlb_status
  29. st_3 st_3
  30. ddlb_itemflag ddlb_itemflag
  31. st_2 st_2
  32. ddlb_scid ddlb_scid
  33. st_4 st_4
  34. cbx_1 cbx_1
  35. end type
  36. global w_income_expenses w_income_expenses
  37. type variables
  38. uo_income_expenses uo_ie
  39. Int cur_flag = -1
  40. Int cur_secflag = -1
  41. Int cur_itemflag = -1
  42. Long cur_scid
  43. end variables
  44. forward prototypes
  45. public function integer wf_refresh_curuc (long arg_billid)
  46. public function integer wf_statusbtn_fc ()
  47. public subroutine wf_autofrom_oppose_cust (long arg_billid, readonly string arg_billcode, decimal arg_amt)
  48. end prototypes
  49. event ue_dept_ch();IF Not dw_edit_mode THEN RETURN
  50. Long uc_row
  51. uc_row = dw_uc.GetRow()
  52. IF uc_row <= 0 THEN
  53. MessageBox('系统提示','请先选择单据')
  54. RETURN
  55. END IF
  56. Open(w_department_ch)
  57. s_deptype s_dep_rst
  58. s_dep_rst = Message.PowerObjectParm
  59. IF s_dep_rst.departmentid > 0 THEN
  60. dw_uc.Object.u_income_expenses_deptid[uc_row] = s_dep_rst.departmentid
  61. END IF
  62. dw_uc.AcceptText()
  63. end event
  64. event insert_childrow();Long li_row
  65. DateTime ld_nulltime
  66. SetNull(ld_nulltime)
  67. li_row = dw_child.InsertRow(0)
  68. dw_child.ScrollToRow(li_row)
  69. dw_child.SetColumn ('u_itemdef_itemcode')
  70. end event
  71. event ue_fj_edit();IF dw_edit_mode THEN
  72. MessageBox('提示','编辑状态下不可用')
  73. RETURN
  74. END IF
  75. IF NOT f_power_ind(3494,sys_msg_pow) THEN
  76. MessageBox(publ_operator,sys_msg_pow)
  77. RETURN
  78. END IF
  79. s_edit_index_tran s_pic
  80. Long ll_ConnectionID
  81. String arg_msg
  82. Long ls_row
  83. ls_row = dw_pageretr.GetRow()
  84. IF ls_row <= 0 THEN
  85. RETURN
  86. END IF
  87. IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
  88. MessageBox('提示','没有指定附件数据库连接'+arg_msg)
  89. RETURN
  90. END IF
  91. s_pic.f_long = 546 //其它收入支出单的mainID
  92. s_pic.f_string = dw_pageretr.Object.u_income_expenses_billcode[ls_row]
  93. s_pic.g_long = dw_pageretr.Object.u_income_expenses_billid[ls_row]
  94. s_pic.e_long = dw_pageretr.Object.scid[ls_row]
  95. s_pic.sqltransaction = sys_filedb_sqlca
  96. OpenWithParm(w_fj_bill_mng,s_pic)
  97. //wf_check_billfj()
  98. end event
  99. event ue_fj_view();IF dw_edit_mode THEN
  100. MessageBox('提示','编辑状态下不可用')
  101. RETURN
  102. END IF
  103. s_edit_index_tran s_pic
  104. Long ll_ConnectionID
  105. String arg_msg
  106. Long ls_row
  107. ls_row = dw_pageretr.GetRow()
  108. IF ls_row <= 0 THEN
  109. RETURN
  110. END IF
  111. IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
  112. MessageBox('提示','没有指定附件数据库连接'+arg_msg)
  113. RETURN
  114. END IF
  115. s_pic.f_long = 546 //其它收入支出单的mainID
  116. s_pic.f_string = dw_pageretr.Object.u_income_expenses_billcode[ls_row]
  117. s_pic.g_long = dw_pageretr.Object.u_income_expenses_billid[ls_row]
  118. s_pic.e_long = dw_pageretr.Object.scid[ls_row]
  119. s_pic.sqltransaction = sys_filedb_sqlca
  120. OpenWithParm(w_fj_bill_view,s_pic)
  121. end event
  122. public function integer wf_refresh_curuc (long arg_billid);If arg_billid <= 0 Or IsNull(arg_billid) Then Return 0
  123. Long uc_row
  124. uc_row = dw_pageretr.GetRow()
  125. If uc_row <= 0 Then Return 0
  126. String billcode
  127. String credencecode
  128. Long banktypeid
  129. Decimal amt
  130. Long accountsid
  131. DateTime outdate,viewdate //
  132. String Descrp
  133. String rep
  134. String itemcode
  135. Long rapmoneyid
  136. Long itemid
  137. String itemname
  138. String itemtype
  139. String itemsectype
  140. Long itemflag
  141. String Opemp
  142. DateTime Opdate
  143. DateTime ModDate
  144. String ModEmp
  145. Long flag
  146. String auditemp
  147. DateTime auditdate
  148. Long secflag
  149. String secauditemp
  150. DateTime secauditdate
  151. Long deptid
  152. Long scid
  153. String cw_department_handtype,ls_accountsname
  154. String bankstr
  155. String idcode
  156. String ls_dscrp
  157. String accountrep
  158. Select
  159. U_income_expenses.outdate,
  160. U_income_expenses.viewdate,
  161. U_income_expenses.banktypeid,
  162. U_income_expenses.credencecode,
  163. U_income_expenses.accountsid,
  164. U_income_expenses.rep,
  165. U_income_expenses.Descrp,
  166. U_income_expenses.rapmoneyid,
  167. U_income_expenses.billcode,
  168. U_income_expenses.itemid,
  169. U_income_expenses.Opemp,
  170. U_income_expenses.Opdate,
  171. U_income_expenses.ModDate,
  172. U_income_expenses.ModEmp,
  173. U_income_expenses.itemflag,
  174. U_income_expenses.deptid,
  175. U_income_expenses.amt,
  176. U_income_expenses.flag,
  177. U_income_expenses.auditemp,
  178. U_income_expenses.auditdate,
  179. U_income_expenses.secflag,
  180. U_income_expenses.secauditemp,
  181. U_income_expenses.secauditdate,
  182. U_income_expenses.scid,
  183. u_accounts.accountsname,
  184. u_accounts.bankstr,
  185. u_accounts.idcode,
  186. u_accounts.dscrp,
  187. u_accounts.accountrep
  188. Into
  189. :outdate,
  190. :viewdate,
  191. :banktypeid,
  192. :credencecode,
  193. :accountsid,
  194. :rep,
  195. :Descrp,
  196. :rapmoneyid,
  197. :billcode,
  198. :itemid,
  199. :Opemp,
  200. :Opdate,
  201. :ModDate,
  202. :ModEmp,
  203. :itemflag,
  204. :deptid,
  205. :amt,
  206. :flag,
  207. :auditemp,
  208. :auditdate,
  209. :secflag,
  210. :secauditemp,
  211. :secauditdate,
  212. :scid,
  213. :ls_accountsname,
  214. :bankstr,
  215. :idcode,
  216. :ls_dscrp,
  217. :accountrep
  218. From U_income_expenses Left Outer join u_accounts On
  219. U_income_expenses.accountsid = u_accounts.accountsid
  220. Where ( U_income_expenses.billid = :arg_billid ) ;
  221. If sqlca.SQLCode <> 0 Then
  222. MessageBox('系统提示',"查询收支单操作失败"+sqlca.SQLErrText)
  223. Return 0
  224. End If
  225. dw_pageretr.SetRedraw(False)
  226. dw_pageretr.Object.U_income_expenses_billid[uc_row] = arg_billid
  227. dw_pageretr.Object.U_income_expenses_billcode[uc_row] = billcode
  228. dw_pageretr.Object.U_income_expenses_credencecode[uc_row] = credencecode
  229. dw_pageretr.Object.U_income_expenses_banktypeid[uc_row] = banktypeid
  230. dw_pageretr.Object.U_income_expenses_amt[uc_row] = amt
  231. dw_pageretr.Object.U_income_expenses_accountsid[uc_row] = accountsid
  232. dw_pageretr.Object.U_income_expenses_outdate[uc_row] = outdate
  233. dw_pageretr.Object.U_income_expenses_viewdate[uc_row] = viewdate
  234. dw_pageretr.Object.U_income_expenses_Descrp[uc_row] = Descrp
  235. dw_pageretr.Object.U_income_expenses_rep[uc_row] = rep
  236. dw_pageretr.Object.itemflag[uc_row] = itemflag
  237. dw_pageretr.Object.U_income_expenses_rapmoneyid[uc_row] = rapmoneyid
  238. dw_pageretr.Object.U_income_expenses_itemid[uc_row] = itemid
  239. dw_pageretr.Object.U_income_expenses_Opemp[uc_row] = Opemp
  240. dw_pageretr.Object.U_income_expenses_Opdate[uc_row] = Opdate
  241. dw_pageretr.Object.U_income_expenses_ModDate[uc_row] = ModDate
  242. dw_pageretr.Object.U_income_expenses_ModEmp[uc_row] = ModEmp
  243. dw_pageretr.Object.U_income_expenses_flag[uc_row] = flag
  244. dw_pageretr.Object.U_income_expenses_auditemp[uc_row] = auditemp
  245. dw_pageretr.Object.U_income_expenses_auditdate[uc_row] = auditdate
  246. dw_pageretr.Object.U_income_expenses_secflag[uc_row] = secflag
  247. dw_pageretr.Object.U_income_expenses_secauditemp[uc_row] = secauditemp
  248. dw_pageretr.Object.U_income_expenses_secauditdate[uc_row] = secauditdate
  249. dw_pageretr.Object.U_income_expenses_deptid[uc_row] = deptid
  250. dw_pageretr.Object.scid[uc_row] = scid
  251. dw_pageretr.Object.u_accounts_accountsname[uc_row] = ls_accountsname
  252. dw_pageretr.Object.u_accounts_bankstr[uc_row] = bankstr
  253. dw_pageretr.Object.u_accounts_idcode[uc_row] = idcode
  254. dw_pageretr.Object.u_accounts_dscrp[uc_row] = ls_dscrp
  255. dw_pageretr.Object.u_accounts_accountrep[uc_row] = accountrep
  256. dw_pageretr.SetRedraw(True)
  257. dw_uc.Reset()
  258. dw_pageretr.RowsCopy(dw_pageretr.GetRow(), dw_pageretr.GetRow(), Primary!, dw_uc, 1, Primary!)
  259. wf_statusbtn_fc()
  260. Return 1
  261. end function
  262. public function integer wf_statusbtn_fc ();//wf_statusbtn_fc
  263. Long pagerert_row
  264. Int li_flag
  265. Int li_secflag
  266. pagerert_row = dw_pageretr.GetRow()
  267. IF pagerert_row <= 0 THEN
  268. cb_auditing.Enabled = False
  269. cb_auditing_cancel.Enabled = False
  270. GOTO ext
  271. END IF
  272. li_flag = dw_pageretr.Object.u_income_expenses_flag[pagerert_row]
  273. li_secflag = dw_pageretr.Object.u_income_expenses_secflag[pagerert_row]
  274. IF dw_edit_mode THEN
  275. cb_auditing.Enabled = False
  276. cb_auditing_cancel.Enabled = False
  277. cb_auditing.Text = '审核&F'
  278. cb_auditing_cancel.Text = '撤审'
  279. ELSE
  280. IF li_flag = 0 THEN
  281. cb_auditing.Enabled = True
  282. cb_auditing_cancel.Enabled = False
  283. cb_auditing.Text = '审核&F'
  284. cb_auditing_cancel.Text = '撤审'
  285. ELSEIF li_flag = 1 And li_secflag = 0 THEN
  286. cb_auditing.Enabled = True
  287. cb_auditing_cancel.Enabled = True
  288. cb_auditing.Text = '确认&F'
  289. cb_auditing_cancel.Text = '撤审'
  290. ELSEIF li_flag = 1 And li_secflag = 1 THEN
  291. cb_auditing.Enabled = False
  292. cb_auditing_cancel.Enabled = True
  293. cb_auditing.Text = '确认&F'
  294. cb_auditing_cancel.Text = '反确认'
  295. END IF
  296. END IF
  297. cb_auditing.TriggerEvent('ue_textchange')
  298. cb_auditing_cancel.TriggerEvent('ue_textchange')
  299. ext:
  300. RETURN 0
  301. end function
  302. public subroutine wf_autofrom_oppose_cust (long arg_billid, readonly string arg_billcode, decimal arg_amt);// TODO: 自去边带客户投诉单
  303. IF Not dw_edit_mode THEN
  304. cb_add.TriggerEvent(Clicked!)
  305. END IF
  306. IF Not dw_edit_mode THEN RETURN
  307. Long row
  308. row = dw_child.GetRow()
  309. IF row <= 0 THEN
  310. row = dw_child.InsertRow(0)
  311. ELSE
  312. IF dw_child.Object.u_income_expenses_mx_amt[row] <> 0 Or dw_child.Object.u_income_expenses_mx_relbillid[row] <> 0 THEN
  313. row = dw_child.InsertRow(0)
  314. END IF
  315. END IF
  316. dw_child.Object.u_income_expenses_mx_buildtype[row] = 3
  317. dw_child.Object.u_income_expenses_mx_relscid[row] = 0
  318. dw_child.Object.u_income_expenses_mx_relbillid[row] = arg_billid
  319. dw_child.Object.u_income_expenses_mx_relbillcode[row] = arg_billcode
  320. dw_child.Object.u_income_expenses_mx_amt[row] = arg_amt
  321. end subroutine
  322. on w_income_expenses.create
  323. int iCurrent
  324. call super::create
  325. this.ddlb_status=create ddlb_status
  326. this.st_3=create st_3
  327. this.ddlb_itemflag=create ddlb_itemflag
  328. this.st_2=create st_2
  329. this.ddlb_scid=create ddlb_scid
  330. this.st_4=create st_4
  331. this.cbx_1=create cbx_1
  332. iCurrent=UpperBound(this.Control)
  333. this.Control[iCurrent+1]=this.ddlb_status
  334. this.Control[iCurrent+2]=this.st_3
  335. this.Control[iCurrent+3]=this.ddlb_itemflag
  336. this.Control[iCurrent+4]=this.st_2
  337. this.Control[iCurrent+5]=this.ddlb_scid
  338. this.Control[iCurrent+6]=this.st_4
  339. this.Control[iCurrent+7]=this.cbx_1
  340. end on
  341. on w_income_expenses.destroy
  342. call super::destroy
  343. destroy(this.ddlb_status)
  344. destroy(this.st_3)
  345. destroy(this.ddlb_itemflag)
  346. destroy(this.st_2)
  347. destroy(this.ddlb_scid)
  348. destroy(this.st_4)
  349. destroy(this.cbx_1)
  350. end on
  351. event ue_usual_query_retr;call super::ue_usual_query_retr;String ls_querystrpart = ''
  352. ls_newselect = Lower(ori_oldselect)
  353. IF Trim(sle_usual_query.Text) <> '' THEN
  354. IF Pos(Trim(sle_usual_query.Text),'%') = 0 THEN
  355. ls_querystrpart = "(u_income_expenses.billcode like '%"+Trim(sle_usual_query.Text)+"%')"
  356. ELSE
  357. ls_querystrpart = "(u_income_expenses.billcode like '"+Trim(sle_usual_query.Text)+"')"
  358. END IF
  359. IF Pos(ls_newselect," where ") <> 0 THEN
  360. ls_newselect = ls_newselect+" and ("+ls_querystrpart+')'
  361. ELSE
  362. ls_newselect = ls_newselect+" where ("+ls_querystrpart+')'
  363. END IF
  364. END IF
  365. wf_retrieveuc(dw_pageretr,ls_newselect,1)
  366. THIS.TriggerEvent('retrieve_pageretr')
  367. end event
  368. event ue_usual_query_filt;call super::ue_usual_query_filt;string obj_expr=''
  369. if trim(sle_usual_query.text)<>'' then
  370. if pos(trim(sle_usual_query.text),'%')=0 then
  371. obj_expr=obj_expr+'( u_income_expenses_billcode like "%'+trim(sle_usual_query.text)+'%" )'
  372. else
  373. obj_expr=obj_expr+'( u_income_expenses_billcode like "'+trim(sle_usual_query.text)+'" )'
  374. end if
  375. end if
  376. dw_pageretr.setfilter(obj_expr)
  377. dw_pageretr.setredraw(false)
  378. dw_pageretr.filter()
  379. if dw_pageretr.rowcount()>=1 then
  380. dw_pageretr.selectrow(0,false)
  381. dw_pageretr.selectrow(1,true)
  382. end if
  383. dw_pageretr.setredraw(true)
  384. end event
  385. event close;call super::close;destroy uo_ie
  386. end event
  387. event open;call super::open;uc_column_int=8 //uc dw前6列可以编辑
  388. child_column_int = 7
  389. uo_ie =create uo_income_expenses
  390. uo_ie.commit_transaction = sqlca
  391. end event
  392. event refresh_interface;call super::refresh_interface;wf_statusbtn_fc()
  393. ddlb_status.Enabled = Not dw_edit_mode
  394. ddlb_itemflag.Enabled = Not dw_edit_mode
  395. ddlb_scid.Enabled = NOT dw_edit_mode
  396. end event
  397. event retrieve_pageretr;Boolean cb_nextpage_enabled,cb_retrieveall_enabled
  398. Boolean cb_func_enabled,cb_retrieve_enabled
  399. cb_nextpage_enabled = cb_nextpage.Enabled
  400. cb_retrieveall_enabled = cb_retrieveall.Enabled
  401. cb_func_enabled = cb_func.Enabled
  402. cb_nextpage.Enabled = False
  403. cb_retrieveall.Enabled = False
  404. cb_func.Enabled = False
  405. //权限1829 只能看到自己建立的单据
  406. String cur_opemp
  407. IF sys_power_issuper Or Not f_power_ind(1829) THEN //
  408. cur_opemp = ''
  409. ELSE
  410. cur_opemp = publ_operator
  411. END IF
  412. dw_uc.Retrieve()
  413. dw_pageretr.Retrieve(cur_scid,cur_flag,cur_itemflag,cur_secflag,cur_opemp)
  414. IF dw_pageretr.RowCount() > 0 THEN
  415. dw_pageretr.SetRow(1)
  416. dw_pageretr.TriggerEvent(RowFocusChanged!)
  417. END IF
  418. This.TriggerEvent('retrieve_childdw')
  419. cb_nextpage.Enabled = cb_nextpage_enabled
  420. cb_retrieveall.Enabled = cb_retrieveall_enabled
  421. cb_func.Enabled = cb_func_enabled
  422. wf_statusbtn_fc()
  423. end event
  424. event ue_f9;call super::ue_f9;IF Not dw_edit_mode THEN RETURN
  425. IF dw_child.GetRow() <= 0 THEN
  426. MessageBox(publ_operator,'请先选择明细')
  427. RETURN
  428. END IF
  429. IF Not IsValid(w_saletask_ch) THEN
  430. This.Enabled = False
  431. Open(w_oppose_cust_ch)
  432. This.Enabled = True
  433. s_oppose_cust_ch s_ch
  434. s_ch = Message.PowerObjectParm
  435. dw_child.SetRedraw(False)
  436. IF s_ch.billid > 0 THEN
  437. dw_child.Object.u_income_expenses_mx_relscid[dw_child.GetRow()] = 0
  438. dw_child.Object.u_income_expenses_mx_relbillid[dw_child.GetRow()] = s_ch.billid
  439. dw_child.Object.u_income_expenses_mx_relbillcode[dw_child.GetRow()] = s_ch.billcode
  440. END IF
  441. dw_child.AcceptText()
  442. dw_child.SetRedraw(True)
  443. END IF
  444. end event
  445. event ue_viewprint;call super::ue_viewprint;Long LS_ROW
  446. LS_ROW = dw_pageretr.GetRow()
  447. IF LS_ROW <= 0 THEN
  448. MessageBox('NO','没有打印目标单据!')
  449. RETURN
  450. END IF
  451. S_print_MSG LS_PRMSG
  452. if ls_powerid = 0 then ls_powerid = 993
  453. IF ls_newname <> '' THEN
  454. IF Not f_power_ind(ls_powerid,sys_msg_pow) THEN
  455. MessageBox(publ_operator,sys_msg_pow)
  456. RETURN
  457. END IF
  458. IF li_auditprint = 1 THEN
  459. IF dw_pageretr.Object.u_income_expenses_flag[dw_pageretr.GetRow()] = 0 THEN
  460. MessageBox('NO','目标单据还未审核,不能打印!')
  461. RETURN
  462. END IF
  463. END IF
  464. LS_PRMSG.obj_dwNAME = ls_newname
  465. ELSE
  466. IF Not f_power_ind(993,sys_msg_pow) THEN
  467. MessageBox(publ_operator,sys_msg_pow)
  468. RETURN
  469. END IF
  470. LS_PRMSG.obj_dwNAME = 'dw_rp_income_expenses_print'
  471. END IF
  472. if LS_PRMSG.obj_dwNAME = '' then return
  473. LS_PRMSG.TAG_TEXT = this.title
  474. LS_PRMSG.FILTER_STRING = ''
  475. LS_PRMSG.retr_pram_falg = 2
  476. LS_PRMSG.PAGECH_FLAG = 0
  477. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.u_income_expenses_billid[LS_ROW]
  478. OpenWithParm(w_publ_preview,LS_PRMSG)
  479. //**更新打印次料
  480. String arg_msg
  481. printnum = Message.DoubleParm
  482. Long ll_scid
  483. String ls_code
  484. ll_scid = 0
  485. ls_code = dw_pageretr.Object.u_income_expenses_billcode[dw_pageretr.GetRow()]
  486. f_update_printnum2(ll_scid,ls_code,FALSE,printnum,arg_msg,TRUE)
  487. end event
  488. event ue_print;call super::ue_print;//--直接打印
  489. uo_print_preview uo_print
  490. IF MessageBox ("IF","是否确定要打印当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  491. S_print_MSG LS_PRMSG
  492. Long LS_ROW
  493. LS_ROW = dw_pageretr.GetRow()
  494. IF LS_ROW <= 0 THEN
  495. MessageBox('NO','没有打印目标单据!')
  496. RETURN
  497. END IF
  498. if ls_powerid = 0 then ls_powerid = 993
  499. IF ls_newname <> '' THEN
  500. IF NOT f_power_ind(ls_powerid,sys_msg_pow) THEN
  501. MessageBox(publ_operator,sys_msg_pow)
  502. RETURN
  503. END IF
  504. IF li_auditprint = 1 THEN
  505. IF dw_pageretr.Object.u_income_expenses_flag[dw_pageretr.GetRow()] = 0 THEN
  506. MessageBox('NO','目标单据还未审核,不能打印!')
  507. RETURN
  508. END IF
  509. END IF
  510. LS_PRMSG.obj_dwNAME = ls_newname
  511. ELSE
  512. IF NOT f_power_ind(993,sys_msg_pow) THEN
  513. MessageBox(publ_operator,sys_msg_pow)
  514. RETURN
  515. END IF
  516. LS_PRMSG.obj_dwNAME = 'dw_rp_income_expenses_print'
  517. END IF
  518. IF LS_PRMSG.obj_dwNAME = '' THEN RETURN
  519. LS_PRMSG.retr_pram_falg = 2
  520. LS_PRMSG.TAG_TEXT = '费用支出单'
  521. LS_PRMSG.FILTER_STRING = ''
  522. LS_PRMSG.PAGECH_FLAG = 0
  523. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.u_income_expenses_billid[LS_ROW]
  524. uo_print.FACT_PRINT_MSG = LS_PRMSG
  525. String arg_msg
  526. IF uo_print.uof_print_begin(arg_msg) = 0 THEN
  527. MessageBox("系统提示",arg_msg)
  528. RETURN
  529. END IF
  530. uo_print.ds_print()
  531. //**更新打印次料
  532. printnum = 1
  533. Long ll_scid
  534. String ls_code
  535. ll_scid = 0
  536. ls_code = dw_pageretr.Object.u_income_expenses_billcode[dw_pageretr.GetRow()]
  537. f_update_printnum2(ll_scid,ls_code,FALSE,printnum,arg_msg,TRUE)
  538. end event
  539. event ue_addzy;call super::ue_addzy;IF Not f_power_ind(994,sys_msg_pow) THEN
  540. MessageBox(publ_operator,sys_msg_pow)
  541. RETURN
  542. END IF
  543. IF dw_edit_mode THEN RETURN
  544. String arg_msg = ''
  545. String ls_str
  546. Long uc_row
  547. s_inputbox s_sreu
  548. uc_row = dw_pageretr.GetRow()
  549. IF uc_row <= 0 THEN
  550. MessageBox('系统提示','请选定当前目标单据!')
  551. RETURN
  552. END IF
  553. s_sreu.Title = '请输入要补充到备注的内容'
  554. s_sreu.old_text = ''
  555. OpenWithParm(w_inputbox,s_sreu)
  556. ls_str = Message.StringParm
  557. IF Trim(ls_str) = '' Or IsNull(ls_str) THEN RETURN
  558. IF uo_ie.add_dscrp(dw_pageretr.Object.U_income_expenses_billid[uc_row],ls_str,arg_msg,True) = 0 THEN
  559. MessageBox('error!',arg_msg)
  560. RETURN
  561. ELSE
  562. MessageBox(publ_operator,'添加备注操作成功!')
  563. wf_refresh_curuc(dw_pageretr.Object.U_income_expenses_billid[uc_row])
  564. END IF
  565. end event
  566. event ue_rpt_viewprint;call super::ue_rpt_viewprint;
  567. Long row,uc_relid,ll_scid
  568. row = dw_pageretr.GetRow()
  569. IF row = 0 THEN RETURN
  570. IF ls_rpname = '' THEN RETURN
  571. IF li_auditprint = 1 THEN
  572. IF dw_pageretr.Object.u_income_expenses_flag[row] = 0 THEN
  573. MessageBox('NO','目标单据还未审核,不能打印!')
  574. RETURN
  575. END IF
  576. END IF
  577. s_rpt_print_msg s_print
  578. s_print.retr_pram_falg = 2
  579. s_print.rpid = ls_msgprintid_rpt
  580. s_print.retr_flag = TRUE
  581. s_print.tag_text = THIS.Title
  582. s_print.rpname = ls_rpname
  583. s_print.retr_pramnmb = dw_pageretr.Object.u_income_expenses_billid[row]
  584. s_print.rowcnt = dw_child.RowCount()
  585. OpenWithParm(w_rpt_preview,s_print)
  586. //**更新打印次料
  587. String arg_msg
  588. printnum = Message.DoubleParm
  589. String ls_code
  590. ll_scid = 0
  591. ls_code = dw_pageretr.Object.u_income_expenses_billcode[row]
  592. f_update_printnum2(ll_scid,ls_code,TRUE,printnum,arg_msg,TRUE)
  593. end event
  594. event ue_rpt_print;call super::ue_rpt_print;Long row,uc_relid,ll_scid
  595. row = dw_pageretr.GetRow()
  596. IF row = 0 THEN RETURN
  597. uo_rpt_print_preview uo_print
  598. S_rpt_print_MSG LS_PRMSG
  599. IF dw_pageretr.RowCount() = 0 THEN
  600. MessageBox('系统信息','没有可打印的单据!')
  601. RETURN
  602. END IF
  603. IF ls_rpname = '' THEN RETURN
  604. IF li_auditprint = 1 THEN
  605. IF dw_pageretr.Object.u_income_expenses_flag[row] = 0 THEN
  606. MessageBox('NO','目标单据还未审核,不能打印!')
  607. RETURN
  608. END IF
  609. END IF
  610. IF MessageBox ("IF","是否确定要打印当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  611. LS_PRMSG.retr_pram_falg = 2
  612. LS_PRMSG.TAG_TEXT = THIS.Title
  613. LS_PRMSG.rpname = ls_rpname
  614. LS_PRMSG.FILTER_STRING = ''
  615. LS_PRMSG.PAGECH_FLAG = 0
  616. LS_PRMSG.rpid = ls_msgprintid_rpt
  617. LS_PRMSG.retr_pramnmb = dw_pageretr.Object.u_income_expenses_billid[row]
  618. LS_PRMSG.rowcnt = dw_child.RowCount()
  619. uo_print.FACT_PRINT_MSG = LS_PRMSG
  620. String arg_msg
  621. IF uo_print.uof_print_begin(arg_msg) = 0 THEN
  622. MessageBox("系统提示",arg_msg)
  623. RETURN
  624. END IF
  625. uo_print.ds_print()
  626. //**更新打印次料
  627. printnum = Message.DoubleParm
  628. String ls_code
  629. ll_scid = 0
  630. ls_code = dw_pageretr.Object.u_income_expenses_billcode[row]
  631. f_update_printnum2(ll_scid,ls_code,TRUE,printnum,arg_msg,TRUE)
  632. end event
  633. event retrieve_childdw;call super::retrieve_childdw;Long row,uc_relid
  634. row = dw_pageretr.GetRow()
  635. IF row > 0 THEN
  636. uc_relid = dw_pageretr.Object.u_income_expenses_billid[row]
  637. dw_child.SetRedraw (False)
  638. dw_child.Retrieve(uc_relid)
  639. dw_child.SetRedraw (True)
  640. IF dw_child.RowCount() > 0 THEN
  641. dw_child.SelectRow(0,False)
  642. dw_child.SelectRow(1,True)
  643. dw_child.SetRow(1)
  644. END IF
  645. ELSE
  646. dw_child.Reset()
  647. END IF
  648. end event
  649. event ue_f8;call super::ue_f8;//用于选择明细内容,被f8[默认]\dw_child.doubleclicked调用
  650. IF Not dw_edit_mode THEN RETURN
  651. IF dw_uc.GetRow() <= 0 THEN
  652. MessageBox('系统提示','请先选择单据')
  653. RETURN
  654. END IF
  655. Long child_row
  656. Long ls_cusid,ll_moneyid
  657. Decimal ld_mrate
  658. Long ls_j
  659. child_row = dw_child.GetRow()
  660. IF Not IsValid(w_itemdef_ch_with_itemflag) THEN
  661. This.Enabled = False
  662. Openwithparm(w_itemdef_ch_with_itemflag,cur_itemflag) //调用
  663. This.Enabled = True
  664. s_itemdef_arr s_inscust
  665. s_inscust = Message.PowerObjectParm //接受返回结构
  666. dw_child.setredraw(false)
  667. FOR ls_j = 1 To UpperBound(s_inscust.itemid)
  668. IF s_inscust.itemid[ls_j] > 0 THEN //正常返回值则可以取以下值
  669. //IF dw_child.Find('u_income_expenses_mx_itemid = '+String(s_inscust.itemid[ls_j]),1,dw_child.RowCount()) > 0 THEN CONTINUE
  670. IF dw_child.GetRow() > 0 THEN
  671. IF dw_child.Object.u_income_expenses_mx_itemid[child_row] <> 0 THEN
  672. child_row = dw_child.InsertRow (0)
  673. ELSE
  674. child_row = dw_child.GetRow()
  675. END IF
  676. ELSE
  677. child_row = dw_child.InsertRow (0)
  678. END IF
  679. dw_child.Object.u_income_expenses_mx_itemid[child_row] = s_inscust.itemid[ls_j]
  680. dw_child.Object.u_itemdef_itemcode[child_row] = s_inscust.itemcode[ls_j]
  681. dw_child.Object.u_itemdef_itemname[child_row] = s_inscust.itemname[ls_j]
  682. dw_child.Object.u_itemdef_itemtype[child_row] = s_inscust.itemtype[ls_j]
  683. dw_child.Object.u_itemdef_itemsectype[child_row] = s_inscust.itemsectype[ls_j]
  684. dw_child.SetColumn('u_income_expenses_mx_amt')
  685. END IF
  686. NEXT
  687. dw_child.setredraw(true)
  688. dw_child.SetFocus()
  689. END IF
  690. end event
  691. event ue_f7;call super::ue_f7;IF Not dw_edit_mode THEN RETURN
  692. Long ls_storageid,ll_cusid
  693. Long ls_taskid,ls_j,ll_i
  694. String ls_taskcode
  695. Long ll_scid,ll_moneyid
  696. Long ll_mtrlid
  697. String ls_status,ls_woodcode,ls_pcode
  698. DateTime ld_outdate
  699. IF dw_child.GetRow() <= 0 THEN
  700. MessageBox(publ_operator,'请先选择明细')
  701. RETURN
  702. END IF
  703. IF Not IsValid(w_saletask_ch) THEN
  704. // s_edit_index_tran s_tranf //传递参数使用
  705. //
  706. //
  707. // s_tranf.b_long = -1
  708. // s_tranf.c_long = -1
  709. // s_tranf.d_long = 1 //选销售订单
  710. // s_tranf.e_long = 1
  711. // s_tranf.h_long = 1
  712. s_saletask_find s_find
  713. s_find.scid = -1
  714. s_find.areaid = sys_areaid
  715. This.Enabled = False
  716. OpenWithParm(w_saletask_ch,s_find)
  717. This.Enabled = True
  718. s_saletask_ch s_saletask
  719. s_saletask = Message.PowerObjectParm
  720. dw_child.SetRedraw(False)
  721. IF s_saletask.taskid > 0 THEN
  722. dw_child.Object.u_income_expenses_mx_relscid[dw_child.GetRow()] = s_saletask.scid
  723. dw_child.Object.u_income_expenses_mx_relbillid[dw_child.GetRow()] = s_saletask.taskid
  724. dw_child.Object.u_income_expenses_mx_relbillcode[dw_child.GetRow()] = s_saletask.taskcode
  725. END IF
  726. dw_child.AcceptText()
  727. dw_child.SetRedraw(True)
  728. END IF
  729. end event
  730. event ue_f10;call super::ue_f10;IF Not dw_edit_mode THEN RETURN
  731. Long uc_row,ls_j
  732. uc_row = dw_child.GetRow()
  733. IF uc_row = 0 THEN
  734. MessageBox('系统提示','请选定明细!')
  735. RETURN
  736. END IF
  737. dw_child.AcceptText()
  738. IF Not IsValid(w_order_ml_mx_mtrl_ch) THEN
  739. s_edit_index_tran s_open //传递参数使用
  740. s_open.if_select_any = False
  741. s_open.d_long = -1
  742. s_open.f_long = 0
  743. s_open.g_long = 1 //使用终止计件条件
  744. s_open.h_long = 0 //进仓
  745. s_open.c_long = 1 //领料
  746. OpenWithParm(w_order_ml_mx_mtrl_ch,s_open)
  747. s_saletask_mtrl s_inscust
  748. s_inscust = Message.PowerObjectParm //接受返回结构
  749. dw_child.SetRedraw(False)
  750. IF UpperBound(s_inscust.taskid) > 0 THEN
  751. IF s_inscust.taskid[1] > 0 THEN //正常返回值则可以取以下值
  752. dw_child.Object.u_income_expenses_mx_relscid[uc_row] = s_inscust.scid[1]
  753. dw_child.Object.u_income_expenses_mx_relbillid[uc_row] = s_inscust.taskid[1]
  754. dw_child.Object.u_income_expenses_mx_relbillcode[uc_row] = s_inscust.taskcode[1]
  755. END IF
  756. END IF
  757. dw_child.SetRedraw(True)
  758. END IF
  759. end event
  760. event resize;
  761. ln_bar.EndX = This.Width
  762. ln_bar2.EndX = This.Width
  763. ln_1.EndX = This.Width
  764. ln_2.EndX = This.Width
  765. r_bar.Width = This.Width
  766. Long w_width,w_height
  767. w_width = 3602
  768. w_height = 2300
  769. IF newwidth < w_width THEN This.Width = w_width
  770. IF newheight < w_height THEN This.Height = w_height
  771. //dw_child.Width = THIS.Width - (w_width - dw_child_w)
  772. //dw_child.Height = THIS.Height - (w_height - dw_child_h)
  773. //dw_pageretr.Width = THIS.Width - (w_width - dw_pageretr_w)
  774. IF uc_width > 0 THEN
  775. dw_uc.Width = uc_width
  776. END IF
  777. IF uc_height > 0 THEN
  778. dw_uc.Height = uc_height
  779. END IF
  780. //IF ins_p_y < ins_c_y THEN
  781. // IF ins_p_y + ins_p_h > ins_c_y THEN
  782. // dw_child.x = dw_uc.x
  783. // dw_child.Y = dw_uc.Y + dw_uc.Height + 4
  784. // dw_child.Width = dw_uc.Width
  785. // dw_child.Height = This.Height - dw_child.Y - 150
  786. //
  787. // dw_pageretr.y = dw_uc.y
  788. // dw_pageretr.X = dw_uc.X + dw_uc.Width
  789. // dw_pageretr.Width = This.Width - dw_pageretr.X - 40
  790. // dw_pageretr.Height = dw_uc.Height + dw_child.Height + (dw_child.Y - dw_uc.Y - dw_uc.Height)
  791. // ELSE
  792. // dw_pageretr.y = dw_uc.y
  793. // dw_pageretr.X = dw_uc.X + dw_uc.Width
  794. // dw_pageretr.Width = This.Width - dw_pageretr.X - 40
  795. // dw_pageretr.Height = dw_uc.Height
  796. //
  797. // dw_child.x = dw_uc.x
  798. // dw_child.Y = dw_uc.Y + dw_uc.Height + 4
  799. // dw_child.Width = This.Width - dw_child.X - 40
  800. // dw_child.Height = This.Height - dw_child.Y - 150
  801. // END IF
  802. //ELSE
  803. // IF ins_c_y + ins_c_h > ins_p_y THEN
  804. // dw_pageretr.x = dw_uc.x
  805. // dw_pageretr.Y = dw_uc.Y + dw_uc.Height + 4
  806. // dw_pageretr.Width = dw_uc.Width
  807. // dw_pageretr.Height = This.Height - dw_pageretr.Y - 150
  808. //
  809. //
  810. // dw_child.y = dw_uc.y
  811. // dw_child.X = dw_uc.X + dw_uc.Width
  812. // dw_child.Width = This.Width - dw_child.X - 40
  813. // dw_child.Height = dw_uc.Height + dw_pageretr.Height + (dw_pageretr.Y - dw_uc.Y - dw_uc.Height)
  814. // ELSE
  815. // dw_child.y = dw_uc.y
  816. // dw_child.X = dw_uc.X + dw_uc.Width
  817. // dw_child.Width = This.Width - dw_child.X - 40
  818. // dw_child.Height = dw_uc.Height
  819. //
  820. //
  821. // dw_pageretr.x = dw_uc.x
  822. // dw_pageretr.Y = dw_uc.Y + dw_uc.height + 4
  823. // dw_pageretr.Width = This.Width - dw_pageretr.X - 40
  824. // dw_pageretr.Height = This.Height - dw_pageretr.Y - 150
  825. //
  826. // END IF
  827. //
  828. //END IF
  829. dw_pageretr.X = dw_uc.X + dw_uc.Width
  830. dw_pageretr.Width = This.Width - dw_pageretr.X - 40
  831. dw_pageretr.Height = dw_uc.Height
  832. dw_child.Y = dw_uc.Y + dw_uc.Height + 4
  833. dw_child.Width = This.Width - dw_child.X - 40
  834. dw_child.Height = This.Height - dw_child.Y - 150
  835. This.TriggerEvent('resize_p')
  836. end event
  837. event ue_f11;call super::ue_f11;//用于选择明细内容,被F9[默认]
  838. IF Not dw_edit_mode THEN RETURN
  839. Long uc_row
  840. Long ll_rst_accountsid
  841. uc_row = dw_uc.GetRow()
  842. IF uc_row = 0 THEN
  843. MessageBox('系统提示','请选定单据!')
  844. RETURN
  845. END IF
  846. dw_uc.AcceptText()
  847. IF Not IsValid(w_accounts_ch) THEN
  848. s_edit_index_tran s_ch_tran //传递参数使用
  849. s_ch_tran.if_retrieve_all = True //是否一次retrieve所有行
  850. s_ch_tran.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式
  851. s_ch_tran.arg_pkid = 0 //目标定位pkid (备用)
  852. s_ch_tran.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选
  853. OpenWithParm(w_accounts_ch,s_ch_tran) //调用
  854. ll_rst_accountsid = Message.DoubleParm //接受返回结构
  855. IF ll_rst_accountsid > 0 THEN //正常返回值则可以取以下值
  856. dw_uc.SetRedraw(False)
  857. dw_uc.Object.u_income_expenses_accountsid[uc_row] = ll_rst_accountsid
  858. dw_uc.SetColumn("u_income_expenses_rep")
  859. dw_uc.SetRedraw(True)
  860. END IF
  861. END IF
  862. end event
  863. type cb_func from w_publ_1ton_share_detail`cb_func within w_income_expenses
  864. integer x = 142
  865. end type
  866. type cb_exit from w_publ_1ton_share_detail`cb_exit within w_income_expenses
  867. integer x = 2318
  868. integer width = 142
  869. end type
  870. type sle_usual_query from w_publ_1ton_share_detail`sle_usual_query within w_income_expenses
  871. integer x = 197
  872. integer width = 549
  873. end type
  874. type cb_retrieveall from w_publ_1ton_share_detail`cb_retrieveall within w_income_expenses
  875. integer x = 2761
  876. integer width = 142
  877. end type
  878. type em_pagerowno from w_publ_1ton_share_detail`em_pagerowno within w_income_expenses
  879. integer x = 2459
  880. end type
  881. type dw_pageretr from w_publ_1ton_share_detail`dw_pageretr within w_income_expenses
  882. event dwnkey pbm_dwnkey
  883. integer x = 1934
  884. integer width = 1614
  885. integer height = 1052
  886. string dataobject = "dw_income_expenses_index"
  887. end type
  888. event dw_pageretr::dwnkey;call super::dwnkey;//int h = 0
  889. end event
  890. event dw_pageretr::constructor;call super::constructor; titleclick_sort_use=true //单击标题排序功能开关
  891. RBUTTON_FILTER_USE=true //右键查询功能开关
  892. end event
  893. event dw_pageretr::rowfocuschanged;call super::rowfocuschanged;wf_statusbtn_fc()
  894. end event
  895. type st_1 from w_publ_1ton_share_detail`st_1 within w_income_expenses
  896. integer x = 14
  897. end type
  898. type cb_nextpage from w_publ_1ton_share_detail`cb_nextpage within w_income_expenses
  899. integer x = 2903
  900. end type
  901. type dw_uc from w_publ_1ton_share_detail`dw_uc within w_income_expenses
  902. integer width = 1929
  903. integer height = 1052
  904. string dataobject = "dw_income_expenses_edit"
  905. end type
  906. event dw_uc::dwnkey;PARENT.TriggerEvent('user_key')
  907. IF Key = KeyDownArrow! THEN RETURN 1
  908. String ls_itemcode,ls_itemname,ls_itemtype,ls_itemsectype,ls_find_code
  909. Int ls_itemflag
  910. Long ls_itemid
  911. Long cnt = 0
  912. Boolean if_find = FALSE
  913. IF dw_edit_mode THEN
  914. IF dw_uc.GetColumnName ( ) = 'u_income_expenses_descrp' And Key = KeyEnter! THEN
  915. dw_child.ScrollToRow(1)
  916. dw_child.SetFocus()
  917. dw_child.SetColumn ('u_itemdef_itemcode')
  918. RETURN 1
  919. elseIF dw_uc.GetColumnName ( ) = 'u_itemdef_itemcode' AND Key = KeyEnter! THEN
  920. dw_uc.AcceptText()
  921. ls_itemcode = Upper(Trim(dw_uc.Object.u_itemdef_itemcode[dw_uc.GetRow()]))
  922. SELECT
  923. u_itemdef.itemid,
  924. u_itemdef.itemcode,
  925. u_itemdef.itemname,
  926. u_itemdef.itemtype,
  927. u_itemdef.itemsectype,
  928. u_itemdef.itemflag
  929. INTO
  930. :ls_itemid,
  931. :ls_itemcode,
  932. :ls_itemname,
  933. :ls_itemtype,
  934. :ls_itemsectype,
  935. :ls_itemflag
  936. FROM u_itemdef
  937. Where ( u_itemdef.itemcode = :ls_itemcode )
  938. and (u_itemdef.itemflag = :cur_itemflag);
  939. IF sqlca.SQLCode <> 0 THEN
  940. IF Pos(Trim(ls_itemcode),'%') = 0 THEN
  941. ls_find_code = '%'+ Trim(ls_itemcode) + '%'
  942. ELSE
  943. ls_find_code = Trim(ls_itemcode)
  944. END IF
  945. SELECT count(*) INTO :cnt
  946. FROM u_itemdef
  947. Where ( u_itemdef.itemcode Like :ls_find_code)
  948. and (u_itemdef.itemflag = :cur_itemflag);
  949. IF sqlca.SQLCode <> 0 THEN
  950. PARENT.TriggerEvent('ue_f9')
  951. RETURN 1
  952. END IF
  953. IF cnt <> 1 THEN
  954. PARENT.TriggerEvent('ue_f9')
  955. RETURN 1
  956. ELSE
  957. SELECT
  958. u_itemdef.itemid,
  959. u_itemdef.itemcode,
  960. u_itemdef.itemname,
  961. u_itemdef.itemtype,
  962. u_itemdef.itemsectype,
  963. u_itemdef.itemflag
  964. INTO :ls_itemid,:ls_itemcode,:ls_itemname,:ls_itemtype,:ls_itemsectype,:ls_itemflag
  965. FROM u_itemdef
  966. Where (u_itemdef.itemcode Like :ls_find_code)
  967. and (u_itemdef.itemflag = :cur_itemflag);
  968. IF sqlca.SQLCode <> 0 THEN
  969. PARENT.TriggerEvent('ue_f9')
  970. RETURN 1
  971. ELSE
  972. if_find = TRUE
  973. END IF
  974. END IF
  975. ELSE
  976. if_find = TRUE
  977. END IF
  978. IF if_find THEN
  979. dw_uc.SetRedraw(FALSE)
  980. dw_uc.Object.u_income_expenses_itemid[dw_uc.GetRow()] = ls_itemid
  981. dw_uc.Object.u_itemdef_itemcode[dw_uc.GetRow()] = ls_itemcode
  982. dw_uc.Object.u_itemdef_itemname[dw_uc.GetRow()] = ls_itemname
  983. dw_uc.Object.u_itemdef_itemtype[dw_uc.GetRow()] = ls_itemtype
  984. dw_uc.Object.u_itemdef_itemsectype[dw_uc.GetRow()] = ls_itemsectype
  985. dw_uc.Object.u_itemdef_itemflag[dw_uc.GetRow()] = ls_itemflag
  986. dw_uc.SetRedraw(TRUE)
  987. dw_uc.SetColumn("u_income_expenses_amt")
  988. RETURN 1
  989. END IF
  990. ELSE
  991. IF Key = KeyEnter! THEN //
  992. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  993. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  994. RETURN 1
  995. END IF
  996. END IF
  997. END IF
  998. end event
  999. event dw_uc::clicked;call super::clicked;IF row > 0 THEN
  1000. IF dwo.Name = 'b_dept' THEN
  1001. Parent.TriggerEvent('ue_dept_ch')
  1002. END IF
  1003. END IF
  1004. end event
  1005. event dw_uc::buttonclicked;call super::buttonclicked;IF dw_edit_mode And row > 0 THEN
  1006. IF dwo.Name = 'b_f11' THEN
  1007. Parent.TriggerEvent('ue_f11')
  1008. END IF
  1009. END IF
  1010. end event
  1011. event dw_uc::doubleclicked;IF dw_edit_mode And row > 0 THEN
  1012. IF dwo.Name = 'u_income_expenses_accountsid' THEN
  1013. Parent.TriggerEvent('ue_f11')
  1014. END IF
  1015. END IF
  1016. end event
  1017. event dw_uc::itemchanged;call super::itemchanged;IF NOT dw_edit_mode THEN RETURN
  1018. THIS.AcceptText()
  1019. Long ll_moneyid_account,ll_moneyid
  1020. Long ll_accountid
  1021. If (dwo.Name = 'u_income_expenses_rapmoneyid' OR dwo.Name = 'u_income_expenses_accountsid') AND THIS.Object.u_income_expenses_accountsid[row] > 0 THEN
  1022. THIS.SetRedraw(FALSE)
  1023. ll_accountid = THIS.Object.u_income_expenses_accountsid[row]
  1024. ll_moneyid = THIS.Object.u_income_expenses_rapmoneyid[row]
  1025. SELECT moneyid INTO :ll_moneyid_account
  1026. FROM u_accounts
  1027. Where accountsid = :ll_accountid;
  1028. IF sqlca.SQLCode <> 0 THEN
  1029. ll_moneyid_account = 0
  1030. RETURN
  1031. END IF
  1032. THIS.Object.u_income_expenses_rapmoneyid[row] = ll_moneyid_account
  1033. // IF ll_moneyid = ll_moneyid_account THEN
  1034. // THIS.Object.u_cusamt_mrate[row] = 1
  1035. // ELSE
  1036. // THIS.Object.u_cusamt_mrate[dw_uc.GetRow()] = f_get_mrate(ll_moneyid)
  1037. // END IF
  1038. THIS.SetRedraw(TRUE)
  1039. END IF
  1040. end event
  1041. type gb_2 from w_publ_1ton_share_detail`gb_2 within w_income_expenses
  1042. integer x = 338
  1043. integer y = 864
  1044. integer width = 215
  1045. integer height = 348
  1046. end type
  1047. type dw_child from w_publ_1ton_share_detail`dw_child within w_income_expenses
  1048. integer y = 1344
  1049. integer height = 924
  1050. string dataobject = "dw_income_expenses_mx_edit"
  1051. end type
  1052. event dw_child::dwnkey;call super::dwnkey;Parent.TriggerEvent('user_key')
  1053. String ls_itemcode
  1054. Long ls_itemid
  1055. String ls_itemname,ls_itemtype,ls_itemsectype,ls_find_code
  1056. Long cnt
  1057. Boolean if_find
  1058. Long ll_row
  1059. IF dw_edit_mode THEN
  1060. IF KeyDown(keydownarrow!) THEN
  1061. Long li_row
  1062. IF dw_child.GetRow() = dw_child.RowCount() THEN
  1063. Parent.TriggerEvent("insert_childrow")
  1064. END IF
  1065. ELSE
  1066. IF KeyDown(keyenter!) And Not KeyDown(keycontrol!) And Not KeyDown(keyshift!) THEN
  1067. IF dw_child.GetColumnName() = 'u_itemdef_itemcode' THEN
  1068. dw_child.AcceptText()
  1069. ls_itemcode = Upper(Trim(dw_child.Object.u_itemdef_itemcode[dw_child.GetRow()]))
  1070. SELECT
  1071. u_itemdef.itemid,
  1072. u_itemdef.itemcode,
  1073. u_itemdef.itemname,
  1074. u_itemdef.itemtype,
  1075. u_itemdef.itemsectype
  1076. Into
  1077. :ls_itemid,
  1078. :ls_itemcode,
  1079. :ls_itemname,
  1080. :ls_itemtype,
  1081. :ls_itemsectype
  1082. From u_itemdef
  1083. Where ( u_itemdef.itemcode = :ls_itemcode )
  1084. And (u_itemdef.itemflag = :cur_itemflag);
  1085. IF sqlca.SQLCode <> 0 THEN
  1086. IF Pos(Trim(ls_itemcode),'%') = 0 THEN
  1087. ls_find_code = '%'+ Trim(ls_itemcode) + '%'
  1088. ELSE
  1089. ls_find_code = Trim(ls_itemcode)
  1090. END IF
  1091. SELECT count(*) INTO :cnt
  1092. FROM u_itemdef
  1093. WHERE ( u_itemdef.itemcode LIKE :ls_find_code)
  1094. And (u_itemdef.itemflag = :cur_itemflag);
  1095. IF sqlca.SQLCode <> 0 THEN
  1096. Parent.TriggerEvent('ue_f8')
  1097. RETURN 1
  1098. END IF
  1099. IF cnt <> 1 THEN
  1100. Parent.TriggerEvent('ue_f8')
  1101. RETURN 1
  1102. ELSE
  1103. SELECT
  1104. u_itemdef.itemid,
  1105. u_itemdef.itemcode,
  1106. u_itemdef.itemname,
  1107. u_itemdef.itemtype,
  1108. u_itemdef.itemsectype
  1109. Into :ls_itemid,:ls_itemcode,:ls_itemname,:ls_itemtype,:ls_itemsectype
  1110. From u_itemdef
  1111. Where (u_itemdef.itemcode Like :ls_find_code)
  1112. And (u_itemdef.itemflag = :cur_itemflag);
  1113. IF sqlca.SQLCode <> 0 THEN
  1114. Parent.TriggerEvent('ue_f9')
  1115. RETURN 1
  1116. ELSE
  1117. if_find = True
  1118. END IF
  1119. END IF
  1120. ELSE
  1121. if_find = True
  1122. END IF
  1123. IF if_find THEN
  1124. // ll_row = dw_child.Find('u_income_expenses_mx_itemid = '+String(ls_itemid),1,dw_child.RowCount())
  1125. //
  1126. // IF ll_row > 0 THEN
  1127. // dw_child.Object.u_itemdef_itemcode[dw_child.GetRow()] = ''
  1128. // dw_child.SetRow(ll_row)
  1129. // dw_child.ScrollToRow(ll_row)
  1130. // dw_child.SelectRow(0,False)
  1131. // dw_child.SelectRow(ll_row,True)
  1132. // RETURN 1
  1133. // END IF
  1134. dw_child.SetRedraw(False)
  1135. dw_child.Object.u_income_expenses_mx_itemid[dw_child.GetRow()] = ls_itemid
  1136. dw_child.Object.u_itemdef_itemcode[dw_child.GetRow()] = ls_itemcode
  1137. dw_child.Object.u_itemdef_itemname[dw_child.GetRow()] = ls_itemname
  1138. dw_child.Object.u_itemdef_itemtype[dw_child.GetRow()] = ls_itemtype
  1139. dw_child.Object.u_itemdef_itemsectype[dw_child.GetRow()] = ls_itemsectype
  1140. dw_child.SetRedraw(True)
  1141. dw_child.SetColumn("u_income_expenses_mx_amt")
  1142. END IF
  1143. IF Key = keyenter! THEN
  1144. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  1145. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  1146. RETURN 1
  1147. END IF
  1148. END IF
  1149. END IF
  1150. END IF
  1151. END IF
  1152. end event
  1153. event dw_child::itemchanged;call super::itemchanged;IF dwo.Name = 'u_income_expenses_mx_buildtype' THEN
  1154. dw_child.Object.u_income_expenses_mx_relbillcode[row] = ''
  1155. dw_child.Object.u_income_expenses_mx_relscid[row] = 0
  1156. dw_child.Object.u_income_expenses_mx_relbillid[row] = 0
  1157. END IF
  1158. end event
  1159. event dw_child::doubleclicked;IF Not dw_edit_mode THEN RETURN
  1160. dw_child.AcceptText()
  1161. IF row > 0 THEN
  1162. IF dwo.Name = 'u_income_expenses_mx_relbillcode' THEN
  1163. IF dw_child.Object.u_income_expenses_mx_buildtype[row] = 1 THEN
  1164. Parent.TriggerEvent('ue_f10')
  1165. ELSEIF dw_child.Object.u_income_expenses_mx_buildtype[row] = 2 THEN
  1166. Parent.TriggerEvent('ue_f7')
  1167. ELSEIF dw_child.Object.u_income_expenses_mx_buildtype[row] = 3 THEN
  1168. Parent.TriggerEvent('ue_f9')
  1169. END IF
  1170. ELSE
  1171. Parent.TriggerEvent('ue_f8')
  1172. END IF
  1173. END IF
  1174. end event
  1175. type cb_viewprint from w_publ_1ton_share_detail`cb_viewprint within w_income_expenses
  1176. integer x = 1673
  1177. end type
  1178. type cb_print from w_publ_1ton_share_detail`cb_print within w_income_expenses
  1179. integer x = 1481
  1180. end type
  1181. type cb_add from w_publ_1ton_share_detail`cb_add within w_income_expenses
  1182. integer x = 293
  1183. end type
  1184. event cb_add::clicked;IF Not f_power_ind(989,sys_msg_pow) THEN
  1185. MessageBox(publ_operator,sys_msg_pow)
  1186. RETURN
  1187. END IF
  1188. String arg_msg = ''
  1189. Long uc_row
  1190. Long ll_i
  1191. Decimal ld_amt_uc,ld_amt_mx
  1192. IF dw_edit_mode THEN
  1193. dw_uc.AcceptText()
  1194. dw_child.AcceptText()
  1195. uc_row = dw_uc.GetRow()
  1196. IF uc_row <= 0 THEN
  1197. MessageBox('系统提示','请选定当前目标单据!')
  1198. RETURN
  1199. END IF
  1200. IF Not dw_uc.Object.u_income_expenses_outdate[uc_row] > DateTime(2000-01-01,Now()) THEN
  1201. MessageBox('系统提示','不合理单据日期')
  1202. dw_uc.SetFocus()
  1203. dw_uc.SetColumn('u_income_expenses_outdate')
  1204. RETURN
  1205. END IF
  1206. IF Not dw_uc.Object.u_income_expenses_viewdate[uc_row] > DateTime(2000-01-01,Now()) THEN
  1207. MessageBox('系统提示','不合理出纳日期')
  1208. dw_uc.SetFocus()
  1209. dw_uc.SetColumn('u_income_expenses_outdate')
  1210. RETURN
  1211. END IF
  1212. IF Trim(dw_uc.Object.u_income_expenses_rep[uc_row]) = '' THEN
  1213. MessageBox('系统提示','请输入经手人')
  1214. dw_uc.SetFocus()
  1215. dw_uc.SetColumn('u_income_expenses_rep')
  1216. RETURN
  1217. END IF
  1218. IF dw_uc.Object.u_income_expenses_banktypeid[uc_row] = 0 THEN
  1219. MessageBox('系统提示','请选择结算方式')
  1220. dw_uc.SetFocus()
  1221. dw_uc.SetColumn('u_income_expenses_banktypeid')
  1222. RETURN
  1223. END IF
  1224. // IF dw_uc.Object.u_income_expenses_itemid[uc_row] = 0 THEN
  1225. // MessageBox('系统提示','请选择收支项目')
  1226. // dw_uc.SetFocus()
  1227. // dw_uc.SetColumn('u_itemdef_itemcode')
  1228. // RETURN
  1229. // END IF
  1230. IF dw_uc.Object.u_income_expenses_accountsid[uc_row] = 0 THEN
  1231. MessageBox('系统提示','请选择银行帐号')
  1232. dw_uc.SetFocus()
  1233. dw_uc.SetColumn('u_income_expenses_accountsid')
  1234. RETURN
  1235. END IF
  1236. // IF dw_uc.Object.u_income_expenses_amt[uc_row] = 0 THEN
  1237. // MessageBox('系统提示','请输入金额')
  1238. // dw_uc.SetFocus()
  1239. // dw_uc.SetColumn('u_income_expenses_amt')
  1240. // RETURN
  1241. // END IF
  1242. // IF dw_uc.Object.u_income_expenses_credencecode[uc_row] = '' THEN
  1243. // MessageBox('系统提示','请输入凭证编号')
  1244. // dw_uc.SetFocus()
  1245. // dw_uc.SetColumn('u_income_expenses_credencecode')
  1246. // RETURN
  1247. // END IF
  1248. //检查金额
  1249. IF sys_option_income_secaudit = 1 And dw_uc.Object.u_income_expenses_flag[uc_row] = 1 THEN
  1250. ld_amt_uc = dw_uc.Object.u_income_expenses_amt[uc_row]
  1251. ld_amt_mx = 0
  1252. FOR ll_i = 1 To dw_child.RowCount()
  1253. ld_amt_mx = ld_amt_mx + dw_child.Object.u_income_expenses_mx_amt[ll_i]
  1254. NEXT
  1255. IF ld_amt_uc <> ld_amt_mx THEN
  1256. MessageBox('系统提示','明细总金额与主表金额不一致,请检查')
  1257. RETURN
  1258. END IF
  1259. END IF
  1260. uo_ie.credencecode = dw_uc.Object.u_income_expenses_credencecode[uc_row]
  1261. uo_ie.banktypeid = dw_uc.Object.u_income_expenses_banktypeid[uc_row]
  1262. // uo_ie.amt = dw_uc.Object.u_income_expenses_amt[uc_row]
  1263. uo_ie.accountsid = dw_uc.Object.u_income_expenses_accountsid[uc_row]
  1264. uo_ie.outdate = dw_uc.Object.u_income_expenses_outdate[uc_row]
  1265. uo_ie.viewdate = dw_uc.Object.u_income_expenses_viewdate[uc_row]// 新加
  1266. uo_ie.Descrp = dw_uc.Object.u_income_expenses_Descrp[uc_row]
  1267. uo_ie.rep = dw_uc.Object.u_income_expenses_rep[uc_row]
  1268. uo_ie.scid = dw_uc.Object.scid[uc_row]
  1269. // uo_ie.itemid = dw_uc.Object.u_income_expenses_itemid[uc_row]
  1270. uo_ie.billtype = 0
  1271. uo_ie.scid = dw_uc.Object.scid[uc_row]
  1272. // uo_ie.deptid = dw_uc.Object.u_income_expenses_deptid[uc_row]
  1273. uo_ie.itemflag = dw_uc.Object.itemflag[uc_row]
  1274. FOR ll_i = 1 To dw_child.RowCount()
  1275. IF dw_child.Object.u_income_expenses_mx_itemid[ll_i] > 0 And dw_child.Object.u_income_expenses_mx_amt[ll_i] <> 0 THEN
  1276. IF uo_ie.acceptmx(dw_child.Object.u_income_expenses_mx_itemid[ll_i] ,&
  1277. dw_child.Object.u_income_expenses_mx_amt[ll_i],&
  1278. dw_child.Object.u_income_expenses_mx_deptid[ll_i],&
  1279. dw_child.Object.u_income_expenses_mx_buildtype[ll_i],&
  1280. dw_child.Object.u_income_expenses_mx_relscid[ll_i],&
  1281. dw_child.Object.u_income_expenses_mx_relbillid[ll_i],&
  1282. dw_child.Object.u_income_expenses_mx_relbillcode[ll_i],&
  1283. dw_child.Object.u_income_expenses_mx_useemp[ll_i],&
  1284. dw_child.Object.u_income_expenses_mx_mxdscrp[ll_i],&
  1285. arg_msg) = 0 THEN
  1286. MessageBox('Error',arg_msg)
  1287. RETURN
  1288. END IF
  1289. END IF
  1290. NEXT
  1291. IF uo_ie.Save(publ_operator,arg_msg,True) = 0 THEN
  1292. MessageBox('error!',arg_msg)
  1293. RETURN
  1294. END IF
  1295. MessageBox(publ_operator,'保存操作成功!')
  1296. f_SetProfileString (sys_empid,dw_uc.DataObject, "dft_banktype",String(dw_uc.Object.u_income_expenses_banktypeid[dw_uc.GetRow()]))
  1297. Long ll_row
  1298. ll_row = dw_pageretr.GetRow()
  1299. dw_pageretr.SelectRow(0,False)
  1300. dw_pageretr.SelectRow(ll_row,True)
  1301. wf_refresh_curuc(uo_ie.billid)
  1302. ELSE
  1303. if cur_itemflag = 0 then
  1304. MessageBox('error!','请选择收支方向')
  1305. RETURN
  1306. end if
  1307. if cur_scid < 0 then
  1308. MessageBox('error!','请选择分部')
  1309. RETURN
  1310. end if
  1311. IF uo_ie.newbegin(arg_msg) = 0 THEN
  1312. MessageBox('error!',arg_msg)
  1313. RETURN
  1314. END IF
  1315. END IF
  1316. CALL Super::Clicked
  1317. IF dw_edit_mode THEN
  1318. Parent.TriggerEvent("insert_childrow")
  1319. string ls_banktype
  1320. ls_banktype = f_ProfileString (sys_empid,dw_uc.DataObject, "dft_banktype",'0')
  1321. dw_uc.Object.itemflag[dw_uc.GetRow()] = cur_itemflag
  1322. dw_uc.Object.scid[dw_uc.GetRow()] = cur_scid
  1323. dw_uc.Object.u_income_expenses_viewdate[dw_uc.GetRow()] =datetime(date(today()),time(now()))
  1324. dw_uc.Object.u_income_expenses_rep[dw_uc.GetRow()] = publ_operator
  1325. dw_uc.Object.u_income_expenses_banktypeid[dw_uc.GetRow()] = Long(ls_banktype)
  1326. ELSE
  1327. Parent.TriggerEvent("retrieve_childdw")
  1328. IF cbx_1.Checked THEN
  1329. This.TriggerEvent(Clicked!)
  1330. RETURN 1
  1331. END IF
  1332. END IF
  1333. end event
  1334. type cb_edit from w_publ_1ton_share_detail`cb_edit within w_income_expenses
  1335. integer x = 485
  1336. end type
  1337. event cb_edit::clicked;IF Not f_power_ind(989,sys_msg_pow) THEN
  1338. MessageBox(publ_operator,sys_msg_pow)
  1339. RETURN
  1340. END IF
  1341. string arg_msg=''
  1342. long uc_row
  1343. uc_row=dw_pageretr.getrow()
  1344. if uc_row<=0 then
  1345. messagebox('系统提示','请选定当前目标单据!')
  1346. return
  1347. end if
  1348. if not dw_edit_mode then
  1349. if uo_ie.updatebegin(dw_pageretr.object.U_income_expenses_billid[uc_row],arg_msg)=0 then
  1350. messagebox('Error!',arg_msg)
  1351. return
  1352. end if
  1353. wf_refresh_curuc(dw_pageretr.Object.U_income_expenses_billid[uc_row])
  1354. end if
  1355. call super::clicked
  1356. end event
  1357. type cb_delet from w_publ_1ton_share_detail`cb_delet within w_income_expenses
  1358. integer x = 677
  1359. end type
  1360. event cb_delet::clicked;call super::clicked;IF Not f_power_ind(990,sys_msg_pow) THEN
  1361. MessageBox(publ_operator,sys_msg_pow)
  1362. RETURN
  1363. END IF
  1364. IF dw_edit_mode THEN RETURN
  1365. String arg_msg = ''
  1366. Long uc_row
  1367. uc_row = dw_pageretr.GetRow()
  1368. IF uc_row <= 0 THEN
  1369. MessageBox('系统提示','请选定当前目标单据!')
  1370. RETURN
  1371. END IF
  1372. IF MessageBox ("IF","是否确定要删除当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
  1373. IF uo_ie.Cancel(dw_pageretr.Object.U_income_expenses_billid[uc_row],arg_msg,True) = 0 THEN
  1374. MessageBox('Error!',arg_msg)
  1375. ELSE
  1376. //日志
  1377. Long ls_id
  1378. String ls_code
  1379. ls_id = dw_pageretr.Object.U_income_expenses_billid[uc_row]
  1380. ls_code = dw_pageretr.Object.U_income_expenses_billcode[uc_row]
  1381. f_setsysoplog('收支单','收支单删除,id:'+String(ls_id)+',code:'+ls_code,arg_msg,True)
  1382. //--
  1383. MessageBox(publ_operator,'删除单据'+String(dw_pageretr.Object.U_income_expenses_billcode[uc_row])+'成功!')
  1384. dw_pageretr.DeleteRow(uc_row)
  1385. dw_pageretr.TriggerEvent(RowFocusChanged!)
  1386. END IF
  1387. end event
  1388. type cb_addzy from w_publ_1ton_share_detail`cb_addzy within w_income_expenses
  1389. integer x = 1211
  1390. integer width = 270
  1391. end type
  1392. event cb_addzy::clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu
  1393. String menustr
  1394. IF Not dw_edit_mode THEN
  1395. menustr = "|"+"Text=补充备注~tEvent=ue_addzy"
  1396. menustr += "|" + "Text=查看附件~tEvent=ue_fj_view"
  1397. menustr += "|" + "Text=添加附件~tEvent=ue_fj_edit"
  1398. END IF
  1399. IF Len(Trim(menustr)) <> 0 THEN
  1400. dmPopupMenu = Create m_Dfc_Control_PopupMenu
  1401. dmPopupMenu.mf_BuildMenu(This, menustr)
  1402. dmPopupMenu.mf_PopMenu()
  1403. Destroy dmPopupMenu
  1404. END IF
  1405. end event
  1406. type cb_auditing from w_publ_1ton_share_detail`cb_auditing within w_income_expenses
  1407. integer x = 827
  1408. end type
  1409. event cb_auditing::clicked;call super::clicked;IF dw_edit_mode THEN RETURN
  1410. String arg_msg = ''
  1411. Long pagerert_row
  1412. Long ll_i,ll_billid,ll_scid
  1413. Int li_flag
  1414. Long ll_suc,ll_fail
  1415. IF Not KeyDown(KeyControl!) THEN
  1416. pagerert_row = dw_pageretr.GetRow()
  1417. IF pagerert_row <= 0 THEN
  1418. MessageBox('系统提示','请选定当前目标单据!')
  1419. RETURN
  1420. END IF
  1421. IF dw_pageretr.Object.u_income_expenses_flag[pagerert_row] = 0 THEN
  1422. IF Not f_power_ind(991,sys_msg_pow) THEN
  1423. MessageBox(publ_operator,sys_msg_pow)
  1424. RETURN
  1425. END IF
  1426. IF MessageBox ("询问","是否确定要审核当前单据?",question!,yesno! ) = 2 THEN RETURN
  1427. IF uo_ie.permit(dw_pageretr.Object.u_income_expenses_billid[pagerert_row],publ_operator,arg_msg,True) = 0 THEN
  1428. MessageBox('error!',arg_msg)
  1429. ELSE
  1430. MessageBox(publ_operator,'审核成功!')
  1431. wf_refresh_curuc(dw_pageretr.Object.u_income_expenses_billid[pagerert_row])
  1432. END IF
  1433. ELSEIF dw_pageretr.Object.u_income_expenses_flag[pagerert_row] = 1 And dw_pageretr.Object.u_income_expenses_secflag[pagerert_row] = 0 THEN
  1434. IF Not f_power_ind(995,sys_msg_pow) THEN
  1435. MessageBox(publ_operator,sys_msg_pow)
  1436. RETURN
  1437. END IF
  1438. IF MessageBox ("询问","是否确定要财务确认当前单据?",question!,yesno! ) = 2 THEN RETURN
  1439. IF uo_ie.permit2(dw_pageretr.Object.u_income_expenses_billid[pagerert_row],publ_operator,arg_msg,True) = 0 THEN
  1440. MessageBox('error!',arg_msg)
  1441. ELSE
  1442. MessageBox(publ_operator,'财务确认成功!')
  1443. wf_refresh_curuc(dw_pageretr.Object.u_income_expenses_billid[pagerert_row])
  1444. END IF
  1445. END IF
  1446. ELSE
  1447. IF Not f_power_ind(991,sys_msg_pow) THEN
  1448. MessageBox(publ_operator,sys_msg_pow)
  1449. RETURN
  1450. END IF
  1451. IF MessageBox ("询问","是否确定要批审核列表中未审核的单据?",question!,yesno! ) = 2 THEN RETURN
  1452. dw_pageretr.AcceptText()
  1453. Open(w_sys_wait_jdt) //初始化进度条
  1454. w_sys_wait_jdt.Show()
  1455. w_sys_wait_jdt.wf_accepttol(dw_pageretr.RowCount())
  1456. FOR ll_i = 1 To dw_pageretr.RowCount()
  1457. w_sys_wait_jdt.st_msg.Text = dw_pageretr.Object.u_income_expenses_billcode[ll_i] + " 正在审核..." //进度信息
  1458. li_flag = dw_pageretr.Object.u_income_expenses_flag[ll_i]
  1459. IF li_flag = 1 THEN CONTINUE
  1460. ll_billid = dw_pageretr.Object.u_income_expenses_billid[ll_i]
  1461. IF uo_ie.permit(ll_billid,publ_operator,arg_msg,True) = 0 THEN
  1462. ll_fail++
  1463. CONTINUE
  1464. END IF
  1465. ll_suc++
  1466. w_sys_wait_jdt.wf_inc(ll_i) //进度
  1467. NEXT
  1468. Close(w_sys_wait_jdt)
  1469. MessageBox(publ_operator,'批审核成功!成功:'+String(ll_suc)+',失败:'+String(ll_fail))
  1470. Parent.TriggerEvent('retrieve_pageretr')
  1471. END IF
  1472. end event
  1473. type cb_xm from w_publ_1ton_share_detail`cb_xm within w_income_expenses
  1474. boolean visible = false
  1475. integer x = 3026
  1476. boolean enabled = false
  1477. end type
  1478. type cb_retrieve from w_publ_1ton_share_detail`cb_retrieve within w_income_expenses
  1479. integer width = 142
  1480. end type
  1481. type cb_xls from w_publ_1ton_share_detail`cb_xls within w_income_expenses
  1482. integer x = 1865
  1483. end type
  1484. type cb_help from w_publ_1ton_share_detail`cb_help within w_income_expenses
  1485. integer x = 2167
  1486. end type
  1487. type cb_auditing_cancel from w_publ_1ton_share_detail`cb_auditing_cancel within w_income_expenses
  1488. integer x = 1019
  1489. integer width = 192
  1490. end type
  1491. event cb_auditing_cancel::clicked;call super::clicked;
  1492. IF dw_edit_mode THEN RETURN
  1493. String arg_msg = ''
  1494. String ls_code
  1495. Long pagerert_row
  1496. pagerert_row = dw_pageretr.GetRow()
  1497. IF pagerert_row <= 0 THEN
  1498. MessageBox('系统提示','请选定当前目标单据!')
  1499. RETURN
  1500. END IF
  1501. IF dw_pageretr.Object.u_income_expenses_flag[pagerert_row] = 1 And dw_pageretr.Object.u_income_expenses_secflag[pagerert_row] = 0 THEN
  1502. IF Not f_power_ind(992,sys_msg_pow) THEN
  1503. MessageBox(publ_operator,sys_msg_pow)
  1504. RETURN
  1505. END IF
  1506. IF MessageBox ("询问","是否确定要撤消审核当前单据?",question!,yesno! ) = 2 THEN RETURN
  1507. IF uo_ie.cancelpermit(dw_pageretr.Object.u_income_expenses_billid[pagerert_row],arg_msg,True) = 0 THEN
  1508. MessageBox('error!',arg_msg)
  1509. ELSE
  1510. MessageBox(publ_operator,'撤消审核成功!')
  1511. wf_refresh_curuc(dw_pageretr.Object.u_income_expenses_billid[pagerert_row])
  1512. //日志
  1513. ls_code = dw_pageretr.Object.u_income_expenses_billcode[pagerert_row]
  1514. f_setsysoplog('其它收入支出单','其它收入支出单撤审'+',code:'+ls_code,arg_msg,True)
  1515. //--
  1516. END IF
  1517. ELSEIF dw_pageretr.Object.u_income_expenses_flag[pagerert_row] = 1 And dw_pageretr.Object.u_income_expenses_secflag[pagerert_row] = 1 THEN
  1518. IF MessageBox ("询问","是否确定要财务反确认当前单据?",question!,yesno! ) = 2 THEN RETURN
  1519. IF Not f_power_ind(996,sys_msg_pow) THEN
  1520. MessageBox(publ_operator,sys_msg_pow)
  1521. RETURN
  1522. END IF
  1523. IF uo_ie.cancelpermit2(dw_pageretr.Object.u_income_expenses_billid[pagerert_row],arg_msg,True) = 0 THEN
  1524. MessageBox('error!',arg_msg)
  1525. ELSE
  1526. MessageBox(publ_operator,'财务反确认成功!')
  1527. wf_refresh_curuc(dw_pageretr.Object.u_income_expenses_billid[pagerert_row])
  1528. //日志
  1529. ls_code = dw_pageretr.Object.u_income_expenses_billcode[pagerert_row]
  1530. f_setsysoplog('其它收入支出单','其它收入支出单财务反确认'+',code:'+ls_code,arg_msg,True)
  1531. //--
  1532. END IF
  1533. END IF
  1534. end event
  1535. type p_msg from w_publ_1ton_share_detail`p_msg within w_income_expenses
  1536. end type
  1537. type p_help from w_publ_1ton_share_detail`p_help within w_income_expenses
  1538. end type
  1539. type p_encl from w_publ_1ton_share_detail`p_encl within w_income_expenses
  1540. end type
  1541. type p_other from w_publ_1ton_share_detail`p_other within w_income_expenses
  1542. end type
  1543. type gb_3 from w_publ_1ton_share_detail`gb_3 within w_income_expenses
  1544. end type
  1545. type ln_bar from w_publ_1ton_share_detail`ln_bar within w_income_expenses
  1546. integer endx = 2894
  1547. end type
  1548. type ln_bar2 from w_publ_1ton_share_detail`ln_bar2 within w_income_expenses
  1549. end type
  1550. type r_bar from w_publ_1ton_share_detail`r_bar within w_income_expenses
  1551. integer x = 3008
  1552. end type
  1553. type ln_1 from w_publ_1ton_share_detail`ln_1 within w_income_expenses
  1554. end type
  1555. type ln_2 from w_publ_1ton_share_detail`ln_2 within w_income_expenses
  1556. end type
  1557. type ddlb_status from dropdownlistbox within w_income_expenses
  1558. integer x = 1618
  1559. integer y = 188
  1560. integer width = 453
  1561. integer height = 412
  1562. integer taborder = 10
  1563. boolean bringtotop = true
  1564. integer textsize = -9
  1565. integer weight = 400
  1566. fontcharset fontcharset = gb2312charset!
  1567. fontpitch fontpitch = variable!
  1568. string facename = "宋体"
  1569. long textcolor = 33554432
  1570. string text = "[全部]"
  1571. boolean sorted = false
  1572. string item[] = {"[全部]","待审核","待财务确认","审核完毕"}
  1573. borderstyle borderstyle = stylelowered!
  1574. end type
  1575. event selectionchanged;IF Index = 1 THEN
  1576. cur_flag = -1
  1577. cur_secflag = -1
  1578. ELSEIF Index = 2 THEN
  1579. cur_flag = 0
  1580. cur_secflag = 0
  1581. ELSEIF Index = 3 THEN
  1582. cur_flag = 1
  1583. cur_secflag = 0
  1584. ELSEIF Index = 4 THEN
  1585. cur_flag = 1
  1586. cur_secflag = 1
  1587. END IF
  1588. Parent.TriggerEvent('retrieve_pageretr')
  1589. end event
  1590. type st_3 from statictext within w_income_expenses
  1591. integer x = 1486
  1592. integer y = 204
  1593. integer width = 114
  1594. integer height = 48
  1595. boolean bringtotop = true
  1596. integer textsize = -9
  1597. integer weight = 400
  1598. fontcharset fontcharset = gb2312charset!
  1599. fontpitch fontpitch = variable!
  1600. string facename = "宋体"
  1601. long textcolor = 33554432
  1602. long backcolor = 134217739
  1603. string text = "状态"
  1604. alignment alignment = center!
  1605. boolean focusrectangle = false
  1606. end type
  1607. type ddlb_itemflag from dropdownlistbox within w_income_expenses
  1608. integer x = 2226
  1609. integer y = 188
  1610. integer width = 439
  1611. integer height = 300
  1612. integer taborder = 20
  1613. boolean bringtotop = true
  1614. integer textsize = -9
  1615. integer weight = 400
  1616. fontcharset fontcharset = gb2312charset!
  1617. fontpitch fontpitch = variable!
  1618. string facename = "宋体"
  1619. long textcolor = 33554432
  1620. string text = "支出"
  1621. boolean sorted = false
  1622. string item[] = {"[全部]","支出","收入"}
  1623. borderstyle borderstyle = stylelowered!
  1624. end type
  1625. event selectionchanged;IF This.Text = '[全部]' THEN
  1626. cur_itemflag = 0
  1627. ELSEIF This.Text = '收入' THEN
  1628. cur_itemflag = 1
  1629. ELSE
  1630. cur_itemflag = -1
  1631. END IF
  1632. Parent.TriggerEvent('retrieve_pageretr')
  1633. end event
  1634. type st_2 from statictext within w_income_expenses
  1635. integer x = 2085
  1636. integer y = 204
  1637. integer width = 119
  1638. integer height = 48
  1639. boolean bringtotop = true
  1640. integer textsize = -9
  1641. integer weight = 400
  1642. fontcharset fontcharset = gb2312charset!
  1643. fontpitch fontpitch = variable!
  1644. string facename = "宋体"
  1645. long textcolor = 33554432
  1646. long backcolor = 134217739
  1647. string text = "方向"
  1648. boolean focusrectangle = false
  1649. end type
  1650. type ddlb_scid from uo_ddlb_scid within w_income_expenses
  1651. integer x = 896
  1652. integer y = 188
  1653. integer width = 549
  1654. integer height = 1120
  1655. integer taborder = 20
  1656. boolean bringtotop = true
  1657. end type
  1658. event constructor;call super::constructor;cur_scid = This.uo_scid
  1659. end event
  1660. event selectionchanged;call super::selectionchanged;cur_scid = This.uo_scid
  1661. Parent.TriggerEvent("retrieve_pageretr")
  1662. end event
  1663. type st_4 from statictext within w_income_expenses
  1664. integer x = 713
  1665. integer y = 204
  1666. integer width = 165
  1667. integer height = 48
  1668. integer textsize = -9
  1669. integer weight = 400
  1670. fontcharset fontcharset = gb2312charset!
  1671. fontpitch fontpitch = variable!
  1672. string facename = "宋体"
  1673. long textcolor = 33554432
  1674. long backcolor = 134217739
  1675. string text = "分部"
  1676. alignment alignment = right!
  1677. boolean focusrectangle = false
  1678. end type
  1679. type cbx_1 from checkbox within w_income_expenses
  1680. integer x = 2688
  1681. integer y = 196
  1682. integer width = 411
  1683. integer height = 60
  1684. boolean bringtotop = true
  1685. integer textsize = -9
  1686. integer weight = 400
  1687. fontcharset fontcharset = gb2312charset!
  1688. fontpitch fontpitch = variable!
  1689. string facename = "宋体"
  1690. long textcolor = 33554432
  1691. long backcolor = 134217739
  1692. string text = "保存自动新建"
  1693. end type
  1694. event constructor;int li_auto
  1695. li_auto =long(f_profilestring(sys_empid, this.classname(), "auto_add", string(0)))
  1696. if li_auto = 1 then
  1697. this.checked = true
  1698. else
  1699. this.checked = false
  1700. end if
  1701. end event