w_mstpay_other.srw 55 KB

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