w_import_mtrlname.srw 56 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538
  1. $PBExportHeader$w_import_mtrlname.srw
  2. forward
  3. global type w_import_mtrlname from w_publ_base
  4. end type
  5. type cb_reflash from uo_imflatbutton within w_import_mtrlname
  6. end type
  7. type dw_1 from u_dw_rbtnfilter within w_import_mtrlname
  8. end type
  9. type cb_edit from uo_imflatbutton within w_import_mtrlname
  10. end type
  11. type cb_del from uo_imflatbutton within w_import_mtrlname
  12. end type
  13. type cb_mtrl from uo_imflatbutton within w_import_mtrlname
  14. end type
  15. type cb_p_edit from uo_imflatbutton within w_import_mtrlname
  16. end type
  17. type ddlb_im_type from dropdownlistbox within w_import_mtrlname
  18. end type
  19. type cb_copy from uo_imflatbutton within w_import_mtrlname
  20. end type
  21. type cb_sync from uo_imflatbutton within w_import_mtrlname
  22. end type
  23. type cbx_1 from checkbox within w_import_mtrlname
  24. end type
  25. type cb_mode from uo_imflatbutton within w_import_mtrlname
  26. end type
  27. type st_2 from statictext within w_import_mtrlname
  28. end type
  29. type sle_userid from singlelineedit within w_import_mtrlname
  30. end type
  31. type cb_selectuser from uo_imflatbutton within w_import_mtrlname
  32. end type
  33. type cb_excel from uo_imflatbutton within w_import_mtrlname
  34. end type
  35. type dw_2 from u_dw_rbtnfilter within w_import_mtrlname
  36. end type
  37. type cb_edit_mx from commandbutton within w_import_mtrlname
  38. end type
  39. type cb_undo_mx from commandbutton within w_import_mtrlname
  40. end type
  41. type cb_add_mx from commandbutton within w_import_mtrlname
  42. end type
  43. type cb_del_mx from commandbutton within w_import_mtrlname
  44. end type
  45. type cb_price_edit from uo_imflatbutton within w_import_mtrlname
  46. end type
  47. type cb_price_cancel from uo_imflatbutton within w_import_mtrlname
  48. end type
  49. type cb_requestquote from uo_imflatbutton within w_import_mtrlname
  50. end type
  51. type cb_getanswer from uo_imflatbutton within w_import_mtrlname
  52. end type
  53. type ln_bar from line within w_import_mtrlname
  54. end type
  55. type ln_bar2 from line within w_import_mtrlname
  56. end type
  57. type r_bar from rectangle within w_import_mtrlname
  58. end type
  59. type ln_1 from line within w_import_mtrlname
  60. end type
  61. type ln_2 from line within w_import_mtrlname
  62. end type
  63. end forward
  64. global type w_import_mtrlname from w_publ_base
  65. integer width = 3319
  66. integer height = 2064
  67. string title = "网店产品定义"
  68. boolean maxbox = true
  69. boolean resizable = true
  70. windowstate windowstate = maximized!
  71. event ue_new_mtrl ( )
  72. event ue_f8 ( )
  73. event ue_p_dscrp ( )
  74. event ue_p_mtrl ( )
  75. event ue_retrieve_mx ( )
  76. event ue_taobao_download ( )
  77. event ue_taobao_upload ( )
  78. event ue_p_mtrl_auto ( )
  79. event ue_select_user ( )
  80. event ue_xls_export ( )
  81. event ue_xls_import_mtrlcode ( )
  82. event ue_f9 ( )
  83. event ue_retrieve_dw_mx ( )
  84. event ue_f10 ( )
  85. event ue_csv_import_mtrlcode ( )
  86. event ue_aifmb_upload ( )
  87. event ue_pricelist_ch ( )
  88. event ue_aifmb_download ( )
  89. cb_reflash cb_reflash
  90. dw_1 dw_1
  91. cb_edit cb_edit
  92. cb_del cb_del
  93. cb_mtrl cb_mtrl
  94. cb_p_edit cb_p_edit
  95. ddlb_im_type ddlb_im_type
  96. cb_copy cb_copy
  97. cb_sync cb_sync
  98. cbx_1 cbx_1
  99. cb_mode cb_mode
  100. st_2 st_2
  101. sle_userid sle_userid
  102. cb_selectuser cb_selectuser
  103. cb_excel cb_excel
  104. dw_2 dw_2
  105. cb_edit_mx cb_edit_mx
  106. cb_undo_mx cb_undo_mx
  107. cb_add_mx cb_add_mx
  108. cb_del_mx cb_del_mx
  109. cb_price_edit cb_price_edit
  110. cb_price_cancel cb_price_cancel
  111. cb_requestquote cb_requestquote
  112. cb_getanswer cb_getanswer
  113. ln_bar ln_bar
  114. ln_bar2 ln_bar2
  115. r_bar r_bar
  116. ln_1 ln_1
  117. ln_2 ln_2
  118. end type
  119. global w_import_mtrlname w_import_mtrlname
  120. type variables
  121. long ins_child = 15
  122. long ins_child_min = 2
  123. long ins_mx = 5
  124. uo_import_mtrlname ins_import
  125. uo_ljlib_taobao_comapp ins_comapp
  126. ///////////////////////////////////////////////
  127. oleobject ins_taobao
  128. boolean ins_create = false
  129. boolean ins_connected = false
  130. boolean ins_inited = false
  131. s_eb_user ins_user
  132. boolean dw_mx_edit = false
  133. boolean dw_price_edit = false
  134. end variables
  135. forward prototypes
  136. public function integer wf_save (ref string arg_msg)
  137. public subroutine wf_selectall ()
  138. public subroutine wf_face ()
  139. public function integer wf_del (ref string arg_msg)
  140. public function integer wf_from_ole (ref s_import_mtrlname arg_s_import, oleobject arg_import, ref string arg_msg)
  141. public function integer wf_to_ole (s_import_mtrlname arg_s_import, oleobject arg_import, ref string arg_msg)
  142. public function integer wf_taobao_haspower (ref string arg_msg)
  143. public function integer wf_save_mx (ref string arg_msg)
  144. public function integer wf_save_price (ref string arg_msg)
  145. end prototypes
  146. event ue_new_mtrl();IF dw_edit_mode THEN RETURN
  147. s_import_mtrlname arr_import[]
  148. s_taobao_mtrldef_ch arr_mtrl[]
  149. Int rslt = 1
  150. String arg_msg = ''
  151. IF uo_mtrlname_ch_spi.uf_mtrl_ch(Ref arr_mtrl, Ref arg_msg) <> 1 THEN
  152. rslt = 0
  153. GOTO ext
  154. END IF
  155. IF UpperBound(arr_mtrl) <= 0 THEN RETURN
  156. Long i
  157. FOR i = 1 To UpperBound(arr_mtrl)
  158. arr_import[i].im_type = 0
  159. arr_import[i].im_id = ''
  160. arr_import[i].mtrlid = arr_mtrl[i].mtrlid
  161. arr_import[i].eb_title = arr_mtrl[i].mtrlname + '[' + arr_mtrl[i].mtrlcode + ']'
  162. arr_import[i].eb_dscrp = arr_mtrl[i].mtrlname + '[' + arr_mtrl[i].mtrlcode + ']'
  163. NEXT
  164. FOR i = 1 To UpperBound(arr_import)
  165. IF ins_import.uf_save(arr_import[i], arg_msg, False) <> 1 THEN
  166. rslt = 0
  167. GOTO ext
  168. END IF
  169. NEXT
  170. ext:
  171. IF rslt = 1 THEN
  172. COMMIT;
  173. MessageBox('OK', '保存成功')
  174. cb_reflash.TriggerEvent(Clicked!)
  175. ELSE
  176. ROLLBACK;
  177. MessageBox('ERROR', arg_msg)
  178. END IF
  179. end event
  180. event ue_f8();IF Not dw_edit_mode THEN RETURN
  181. Long ll_row
  182. ll_row = dw_1.GetRow()
  183. IF ll_row <= 0 THEN RETURN
  184. s_taobao_mtrldef_ch s_mtrl
  185. String arg_msg = ''
  186. s_mtrl.mtrlcode = dw_1.Object.mtrlcode[ll_row]
  187. IF uo_mtrlname_ch_spi.uf_mtrl_ch(Ref s_mtrl, Ref arg_msg) <> 1 THEN
  188. MessageBox('Error', arg_msg)
  189. RETURN
  190. END IF
  191. IF s_mtrl.mtrlid <= 0 THEN RETURN
  192. dw_1.Object.mtrlid[ll_row] = s_mtrl.mtrlid
  193. dw_1.Object.mtrlcode[ll_row] = s_mtrl.mtrlcode
  194. dw_1.Object.mtrlname[ll_row] = s_mtrl.mtrlname
  195. dw_1.Object.statusflag[ll_row] = s_mtrl.statusflag
  196. dw_1.Object.woodcodeflag[ll_row] = s_mtrl.woodcodeflag
  197. dw_1.Object.pcodeflag[ll_row] = s_mtrl.pcodeflag
  198. end event
  199. event ue_p_dscrp();IF dw_edit_mode THEN RETURN
  200. Long i
  201. s_import_mtrlname arr_import[]
  202. Long j = 0
  203. FOR i = 1 To dw_1.RowCount()
  204. IF dw_1.Object.ch[i] <> 1 THEN CONTINUE
  205. j++
  206. arr_import[j].im_type = dw_1.Object.im_type[i]
  207. arr_import[j].im_id = dw_1.Object.im_id[i]
  208. NEXT
  209. IF UpperBound(arr_import) <= 0 THEN
  210. MessageBox('提示', '请勾选要批修改描述的记录')
  211. RETURN
  212. END IF
  213. Long ll_row
  214. ll_row = dw_1.GetRow()
  215. String ls_html = ''
  216. String arg_msg
  217. IF ll_row > 0 THEN
  218. IF ins_import.uf_getinfo_dscrp(dw_1.Object.im_type[ll_row], dw_1.Object.im_id[ll_row], Ref ls_html, Ref arg_msg) <> 1 THEN
  219. MessageBox('ERROR', arg_msg)
  220. RETURN
  221. END IF
  222. END IF
  223. OpenWithParm(w_html_editor, ls_html)
  224. s_html_editor s_rslt
  225. s_rslt = Message.PowerObjectParm
  226. IF s_rslt.ifok <> 1 THEN RETURN
  227. FOR i = 1 To UpperBound(arr_import)
  228. arr_import[i].eb_dscrp = s_rslt.html
  229. NEXT
  230. Int rslt = 1
  231. FOR i = 1 To UpperBound(arr_import)
  232. IF ins_import.uf_save_dscrp(arr_import[i], arg_msg, False) <> 1 THEN
  233. rslt = 0
  234. GOTO ext
  235. END IF
  236. NEXT
  237. ext:
  238. IF rslt = 1 THEN
  239. COMMIT;
  240. MessageBox('OK', '批改成功')
  241. cb_reflash.TriggerEvent(Clicked!)
  242. ELSE
  243. ROLLBACK;
  244. MessageBox('ERROR', arg_msg)
  245. END IF
  246. end event
  247. event ue_p_mtrl();IF Not dw_edit_mode THEN RETURN
  248. s_taobao_mtrldef_ch s_mtrl
  249. String arg_msg = ''
  250. IF uo_mtrlname_ch_spi.uf_mtrl_ch(Ref s_mtrl, Ref arg_msg) <> 1 THEN
  251. MessageBox('Error', arg_msg)
  252. RETURN
  253. END IF
  254. IF s_mtrl.mtrlid <= 0 THEN RETURN
  255. Long ll_row
  256. FOR ll_row = 1 To dw_1.RowCount()
  257. IF dw_1.Object.ch[ll_row] = 1 THEN
  258. dw_1.Object.mtrlid[ll_row] = s_mtrl.mtrlid
  259. dw_1.Object.mtrlcode[ll_row] = s_mtrl.mtrlcode
  260. dw_1.Object.mtrlname[ll_row] = s_mtrl.mtrlname
  261. dw_1.Object.statusflag[ll_row] = s_mtrl.statusflag
  262. dw_1.Object.woodcodeflag[ll_row] = s_mtrl.woodcodeflag
  263. dw_1.Object.pcodeflag[ll_row] = s_mtrl.pcodeflag
  264. END IF
  265. NEXT
  266. end event
  267. event ue_retrieve_mx();IF IsValid(w_import_mtrlname_dscrp) THEN
  268. Long ll_row
  269. ll_row = dw_1.GetRow()
  270. IF ll_row <= 0 THEN
  271. w_import_mtrlname_dscrp.wf_sethtml('')
  272. RETURN
  273. END IF
  274. String ls_html
  275. String arg_msg
  276. IF ins_import.uf_getinfo_dscrp(dw_1.Object.im_type[ll_row], dw_1.Object.im_id[ll_row], ls_html, arg_msg) <> 1 THEN
  277. w_import_mtrlname_dscrp.wf_sethtml('')
  278. MessageBox('ERROR', arg_msg)
  279. RETURN
  280. END IF
  281. w_import_mtrlname_dscrp.wf_sethtml(ls_html)
  282. END IF
  283. end event
  284. event ue_taobao_download();IF dw_edit_mode THEN RETURN
  285. oleobject s_import_arr
  286. String arg_msg
  287. Int rslt = 1
  288. IF wf_taobao_haspower(arg_msg) <> 1 THEN
  289. MessageBox('提示', arg_msg)
  290. RETURN
  291. END IF
  292. Open(w_import_mtrlname_taobao_moddate_ch)
  293. s_saletask_import_taobao_option s_tran
  294. s_tran = Message.PowerObjectParm
  295. IF s_tran.ifok <> 1 THEN
  296. RETURN
  297. END IF
  298. IF Not ins_taobao.GetItemsOnsaleByDate(s_tran.begindate, s_tran.enddate, Ref s_import_arr, Ref arg_msg) THEN
  299. MessageBox('提示', arg_msg)
  300. RETURN
  301. END IF
  302. Long cnt
  303. cnt = s_import_arr.GetCount()
  304. Long i
  305. s_import_mtrlname arr_import[]
  306. Long j = 0
  307. FOR i = 0 To cnt - 1
  308. j++
  309. IF wf_from_ole(arr_import[j], s_import_arr.GetItem(i), arg_msg) <> 1 THEN
  310. Destroy s_import_arr
  311. MessageBox('提示', arg_msg)
  312. RETURN
  313. END IF
  314. NEXT
  315. Destroy s_import_arr
  316. FOR i = 1 To UpperBound(arr_import)
  317. IF ins_import.uf_save_from_web(arr_import[i], arg_msg, False) <> 1 THEN
  318. rslt = 0
  319. GOTO ext
  320. END IF
  321. NEXT
  322. GOTO ext
  323. ext:
  324. IF rslt = 1 THEN
  325. COMMIT;
  326. MessageBox('OK', '下载成功, 日期范围内有' + string(cnt) + '个产品,同步了' + string(UpperBound(arr_import)) + '个产品')
  327. cb_reflash.TriggerEvent(Clicked!)
  328. ELSE
  329. ROLLBACK;
  330. MessageBox('ERROR', arg_msg)
  331. END IF
  332. end event
  333. event ue_taobao_upload();Int rslt = 1
  334. String arg_msg = ''
  335. IF wf_taobao_haspower(arg_msg) <> 1 THEN
  336. MessageBox('提示', arg_msg)
  337. RETURN
  338. END IF
  339. s_import_mtrlname arr_import[]
  340. Long j = 0
  341. Long ll_cnt
  342. s_import_mtrlname ls_import, s_empty
  343. oleobject s_import_arr
  344. oleobject s_import
  345. Long i
  346. FOR i = 1 To dw_1.RowCount()
  347. IF dw_1.Object.ch[i] <> 1 THEN CONTINUE
  348. j++
  349. IF ins_import.uf_getinfo(dw_1.Object.im_type[i], dw_1.Object.im_id[i], arr_import[j], arg_msg) <> 1 THEN
  350. MessageBox('提示', arg_msg)
  351. RETURN
  352. END IF
  353. NEXT
  354. IF UpperBound(arr_import) <= 0 THEN RETURN
  355. s_import_arr = ins_taobao.News_import_mtrlname_arr()
  356. FOR i = 1 To UpperBound(arr_import)
  357. s_import = ins_taobao.News_import_mtrlname()
  358. IF wf_to_ole(arr_import[i], s_import, arg_msg) <> 1 THEN
  359. Destroy s_import
  360. rslt = 0
  361. GOTO ext
  362. END IF
  363. s_import_arr.Add(s_import)
  364. NEXT
  365. IF Not ins_taobao.Upload(s_import_arr, Ref arg_msg) THEN
  366. rslt = 0
  367. GOTO ext
  368. END IF
  369. ll_cnt = s_import_arr.GetCount()
  370. FOR i = 0 To ll_cnt - 1
  371. IF s_import_arr.GetItem(i).im_type <> 5 THEN
  372. ls_import = s_empty
  373. IF wf_from_ole(ls_import, s_import_arr.GetItem(i), arg_msg) <> 1 THEN
  374. rslt = 0
  375. GOTO ext
  376. END IF
  377. ls_import.im_type = 5
  378. ls_import.im_id = ls_import.numIid
  379. IF ins_import.uf_save(ls_import, arg_msg, False) <> 1 THEN
  380. rslt = 0
  381. GOTO ext
  382. END IF
  383. END IF
  384. NEXT
  385. GOTO ext
  386. ext:
  387. ll_cnt = s_import_arr.GetCount()
  388. FOR i = 0 To ll_cnt - 1
  389. s_import = s_import_arr.GetItem(i)
  390. Destroy s_import
  391. NEXT
  392. Destroy s_import_arr
  393. IF rslt = 1 THEN
  394. COMMIT;
  395. MessageBox('OK', '上传成功')
  396. cb_reflash.TriggerEvent(Clicked!)
  397. ELSE
  398. ROLLBACK;
  399. MessageBox('ERROR', arg_msg)
  400. END IF
  401. end event
  402. event ue_p_mtrl_auto();IF Not dw_edit_mode THEN RETURN
  403. uo_strhelper uo_str
  404. uo_str = Create uo_strhelper
  405. // 物料编码 =
  406. dw_1.AcceptText()
  407. String props[]
  408. String parms[], parm[]
  409. Long i,j,k
  410. FOR i = 1 To dw_1.RowCount()
  411. IF dw_1.Object.ch[i] = 1 THEN
  412. uo_str.split(dw_1.Object.props[i], ";", parms)
  413. FOR j = 1 To UpperBound(parms)
  414. uo_str.split(parms[j], ":", parm)
  415. IF parm[1] <> '' THEN
  416. FOR k = 1 To UpperBound(props)
  417. IF props[k] = parm[1] THEN
  418. EXIT
  419. END IF
  420. NEXT
  421. IF k > UpperBound(props) THEN
  422. props[k] = parm[1]
  423. END IF
  424. END IF
  425. NEXT
  426. END IF
  427. NEXT
  428. s_import_mtrlname_map s_map
  429. s_map.outer_name = props
  430. OpenWithParm(w_import_mtrlname_map, s_map)
  431. s_map = Message.PowerObjectParm
  432. IF s_map.ifok <> 1 THEN RETURN
  433. Long ll_mtrlid
  434. String ls_mtrlcode, ls_mtrlname, ls_value, ls_sql
  435. Long ll_statusflag, ll_woodcodeflag, ll_pcodeflag
  436. FOR i = 1 To dw_1.RowCount()
  437. FOR j = 1 To UpperBound(s_map.inner_name)
  438. ll_mtrlid = 0
  439. ls_mtrlcode = ''
  440. ls_mtrlname = ''
  441. ls_value = ''
  442. uo_str.split(dw_1.Object.props[i], ";", parms)
  443. FOR k = 1 To UpperBound(parms)
  444. uo_str.split(parms[k], ":", parm)
  445. IF parm[1] = s_map.outer_name[j] THEN
  446. ls_value = Trim(parm[2])
  447. EXIT
  448. END IF
  449. NEXT
  450. IF ls_value <> '' THEN
  451. ls_sql = "SELECT mtrlid, mtrlcode, mtrlname FROM u_mtrldef WHERE " + s_map.inner_name[j] + " = ?"
  452. DECLARE cur1 Dynamic Cursor FOR SQLSA;
  453. PREPARE SQLSA From :ls_sql;
  454. OPEN Dynamic cur1 Using :ls_value;
  455. FETCH cur1 Into :ll_mtrlid, :ls_mtrlcode, :ls_mtrlname;
  456. CLOSE cur1;
  457. IF ll_mtrlid > 0 THEN
  458. dw_1.Object.mtrlid[i] = ll_mtrlid
  459. dw_1.Object.mtrlcode[i] = ls_mtrlcode
  460. dw_1.Object.mtrlname[i] = ls_mtrlname
  461. SELECT statusflag, woodcodeflag, pcodeflag
  462. INTO :ll_statusflag, :ll_woodcodeflag, :ll_pcodeflag
  463. FROM u_mtrldef
  464. Where mtrlid = :ll_mtrlid;
  465. IF sqlca.SQLCode <> 0 THEN
  466. ll_statusflag = 3
  467. ll_woodcodeflag = 3
  468. ll_pcodeflag = 3
  469. END IF
  470. dw_1.Object.statusflag[i] = ll_statusflag
  471. dw_1.Object.woodcodeflag[i] = ll_woodcodeflag
  472. dw_1.Object.pcodeflag[i] = ll_pcodeflag
  473. EXIT
  474. END IF
  475. END IF
  476. NEXT
  477. NEXT
  478. Destroy uo_str
  479. end event
  480. event ue_select_user();Long ins_im_type
  481. IF ddlb_im_type.Text = '模板' THEN
  482. ins_im_type = 0
  483. ELSEIF ddlb_im_type.Text = '亚洲国际电商' THEN
  484. ins_im_type = 1
  485. ELSEIF ddlb_im_type.Text = '淘宝' THEN
  486. ins_im_type = 5
  487. ELSEIF ddlb_im_type.Text = '京东' THEN
  488. ins_im_type = 6
  489. ELSE
  490. ins_im_type = -1
  491. END IF
  492. s_eb_user s_ch
  493. OpenWithParm(w_eb_user_define_ch, ins_im_type)
  494. s_ch = Message.PowerObjectParm
  495. IF s_ch.UserID > 0 THEN
  496. ins_user = s_ch
  497. END IF
  498. IF ins_user.im_type = 0 THEN
  499. ddlb_im_type.Text = '模板'
  500. ELSEIF ins_user.im_type = 1 THEN
  501. ddlb_im_type.Text = '亚洲国际电商'
  502. ELSEIF ins_user.im_type = 5 THEN
  503. ddlb_im_type.Text = '淘宝'
  504. ELSEIF ins_user.im_type = 6 THEN
  505. ddlb_im_type.Text = '京东'
  506. ELSE
  507. ddlb_im_type.Text = '全部'
  508. END IF
  509. sle_userid.Text = ins_user.im_userid
  510. cb_reflash.triggerevent(clicked!)
  511. end event
  512. event ue_xls_export();Integer i
  513. String Pathname,Filename
  514. String arg_filename,arg_msg
  515. Blob arg_blob
  516. IF GetFileSaveName("选择备份文件",Pathname,Filename,'xls',"Excel,*.xls") <> 1 THEN RETURN
  517. arg_filename = Trim(Pathname)
  518. IF arg_filename = '' THEN
  519. MessageBox('提示','请输入文件名称', Information!, OK! )
  520. RETURN
  521. END IF
  522. IF FileExists(arg_filename) THEN
  523. IF MessageBox("询问","指定文件已经存在,是否覆盖该文件?",question!,yesno!,2) = 2 THEN
  524. RETURN
  525. END IF
  526. END IF
  527. dw_1.SaveAsAscii(arg_filename)
  528. MessageBox('OK', '导出成功!')
  529. end event
  530. event ue_xls_import_mtrlcode();Int rslt = 1
  531. String arg_msg = ''
  532. String ls_path, ls_filename
  533. IF GetFileOpenName("请选择要导入的Excel文件", ls_path, ls_filename, "XLS","Excel文件(*.XLS),*.XLS") <> 1 THEN
  534. RETURN
  535. END IF
  536. IF ins_import.uf_xls_to_import_mtrlcode(ls_path, arg_msg, false, true) <> 1 THEN
  537. rslt = 0
  538. GOTO ext
  539. END IF
  540. ext:
  541. IF rslt = 1 THEN
  542. COMMIT;
  543. MessageBox('OK', '导入成功')
  544. cb_reflash.TriggerEvent(Clicked!)
  545. ELSE
  546. ROLLBACK;
  547. MessageBox('ERROR', arg_msg)
  548. END IF
  549. end event
  550. event ue_f9();IF Not dw_mx_edit THEN RETURN
  551. Long ll_row
  552. ll_row = dw_2.GetRow()
  553. IF ll_row <= 0 THEN RETURN
  554. s_taobao_mtrldef_ch s_mtrl
  555. String arg_msg = ''
  556. s_mtrl.mtrlcode = dw_2.Object.mtrlcode[ll_row]
  557. IF uo_mtrlname_ch_spi.uf_mtrl_ch(Ref s_mtrl, Ref arg_msg) <> 1 THEN
  558. MessageBox('Error', arg_msg)
  559. RETURN
  560. END IF
  561. IF s_mtrl.mtrlid <= 0 THEN RETURN
  562. dw_2.Object.mtrlid[ll_row] = s_mtrl.mtrlid
  563. dw_2.Object.mtrlcode[ll_row] = s_mtrl.mtrlcode
  564. dw_2.Object.mtrlname[ll_row] = s_mtrl.mtrlname
  565. dw_2.Object.statusflag[ll_row] = s_mtrl.statusflag
  566. dw_2.Object.woodcodeflag[ll_row] = s_mtrl.woodcodeflag
  567. dw_2.Object.pcodeflag[ll_row] = s_mtrl.pcodeflag
  568. end event
  569. event ue_retrieve_dw_mx();Long ll_row
  570. ll_row = dw_1.GetRow()
  571. IF ll_row > 0 THEN
  572. dw_2.Retrieve(dw_1.Object.im_type[ll_row], dw_1.Object.im_id[ll_row])
  573. ELSE
  574. dw_2.Reset()
  575. END IF
  576. end event
  577. event ue_f10();IF Not dw_mx_edit THEN RETURN
  578. Long ll_row, ll_dw1_row
  579. ll_row = dw_2.GetRow()
  580. IF ll_row <= 0 THEN RETURN
  581. ll_dw1_row = dw_1.GetRow()
  582. IF ll_dw1_row <= 0 THEN RETURN
  583. s_key_value_parm s_win
  584. s_win.allprops = dw_1.Object.props[ll_dw1_row]
  585. s_win.curprops = dw_2.Object.pros[ll_row]
  586. OpenWithParm(w_key_value_edit, s_win)
  587. String ls_rtn
  588. ls_rtn = Message.StringParm
  589. IF IsNull(ls_rtn) THEN RETURN
  590. dw_2.Object.pros[ll_row] = ls_rtn
  591. end event
  592. event ue_csv_import_mtrlcode();Int rslt = 1
  593. String arg_msg = ''
  594. String ls_path, ls_filename
  595. IF GetFileOpenName("请选择要导入的csv文件", ls_path, ls_filename, "csv","csv文件(*.csv),*.csv") <> 1 THEN
  596. RETURN
  597. END IF
  598. Long i
  599. s_import_mtrlname arr_import[]
  600. IF ins_import.uf_csv_to_import_mtrlcode(ls_path, arr_import, arg_msg) <> 1 THEN
  601. rslt = 0
  602. GOTO ext
  603. END IF
  604. FOR i = 1 To UpperBound(arr_import)
  605. IF ins_import.uf_save(arr_import[i], arg_msg, False) <> 1 THEN
  606. rslt = 0
  607. GOTO ext
  608. END IF
  609. NEXT
  610. ext:
  611. IF rslt = 1 THEN
  612. COMMIT;
  613. MessageBox('OK', '导入成功,' + string(UpperBound(arr_import)) + '条记录')
  614. cb_reflash.TriggerEvent(Clicked!)
  615. ELSE
  616. ROLLBACK;
  617. MessageBox('ERROR', arg_msg)
  618. END IF
  619. end event
  620. event ue_aifmb_upload();Int rslt = 1
  621. String arg_msg = ''
  622. uo_aifmb = Create uo_aifmb
  623. s_aifmb_addmodproductentrelation s_tran
  624. s_import_mtrlname s_import
  625. String ls_msg = ''
  626. String ls_mtrlcode, ls_mtrlmode, ls_dscrp, ls_unit, ls_mtrlengname, ls_mtrlname
  627. Decimal ld_net_weight, ld_gross_weight, ld_cubage
  628. Long ll_nodeid
  629. Long i
  630. FOR i = 1 To dw_1.RowCount()
  631. IF dw_1.Object.ch[i] <> 1 THEN CONTINUE
  632. IF dw_1.Object.im_type[i] <> 0 THEN CONTINUE
  633. IF ins_import.uf_getinfo(dw_1.Object.im_type[i], dw_1.Object.im_id[i], s_import, arg_msg) <> 1 THEN
  634. ls_msg += '第'+String(i)+'行,查询模板失败,' + arg_msg + '~r~n'
  635. CONTINUE
  636. END IF
  637. IF s_import.mtrlid <= 0 THEN
  638. ls_msg += '第'+String(i)+'行,未对应物料资料不能上传~r~n'
  639. CONTINUE
  640. END IF
  641. SELECT mtrlcode, mtrlmode, dscrp, unit, net_weight, gross_weight, cubage, mtrlengname, mtrlname, nodeid
  642. INTO :ls_mtrlcode, :ls_mtrlmode, :ls_dscrp, :ls_unit, :ld_net_weight, :ld_gross_weight, :ld_cubage, :ls_mtrlengname, :ls_mtrlname, :ll_nodeid
  643. FROM u_mtrldef
  644. Where (mtrlid = :s_import.mtrlid);
  645. IF sqlca.SQLCode <> 0 THEN
  646. ls_msg += '第'+String(i)+'行,查询物料资料失败mtrlid:'+String(s_import.mtrlid)+',' + arg_msg + '~r~n'
  647. CONTINUE
  648. END IF
  649. IF ll_nodeid <= 0 THEN
  650. ls_msg += '第'+String(i)+'行,物料['+ls_mtrlcode+']未绑定亚洲国际电商网的基类~r~n'
  651. CONTINUE
  652. END IF
  653. s_tran.relationid = 0
  654. s_tran.nodeid = ll_nodeid
  655. s_tran.mtrlid = s_import.mtrlid
  656. s_tran.mtrlcode = ls_mtrlcode
  657. s_tran.mtrlname = ls_mtrlname
  658. s_tran.mtrlmode = ls_mtrlmode
  659. s_tran.unit = ls_unit
  660. s_tran.net_weight = ld_net_weight
  661. s_tran.gross_weight = ld_gross_weight
  662. s_tran.cubage = ld_cubage
  663. s_tran.mtrlengname = ls_mtrlengname
  664. s_tran.dscrp = ls_dscrp
  665. s_tran.qualitydscrp = ''
  666. s_tran.customcode = ''
  667. s_tran.mprice = s_import.eb_price
  668. s_tran.nprice = 0
  669. s_tran.ispublic = True
  670. s_tran.ProductID = 0
  671. IF uo_aifmb.uf_addmodproductentrelation(Ref s_tran, arg_msg) <> 1 THEN
  672. ls_msg += '第'+String(i)+'行,上传亚洲国际电商网失败,'+arg_msg+'~r~n'
  673. CONTINUE
  674. END IF
  675. s_import.im_type = 1
  676. s_import.im_id = string(s_tran.relationid)
  677. s_import.eb_num = 0
  678. s_import.eb_type = ''
  679. s_import.eb_stuffstatus = ''
  680. s_import.eb_title = ls_mtrlname
  681. s_import.eb_locationstate = ''
  682. s_import.eb_locationcity = ''
  683. s_import.eb_cid = string(ll_nodeid)
  684. s_import.numiid = string(s_tran.ProductID)
  685. s_import.props = ''
  686. s_import.im_userid = ''
  687. IF ins_import.uf_save(s_import, arg_msg, True) <> 1 THEN
  688. ls_msg += '第'+String(i)+'行,上传亚洲国际电商网成功但保存数据库失败,'+arg_msg+'~r~n'
  689. CONTINUE
  690. END IF
  691. NEXT
  692. IF ls_msg <> '' THEN
  693. rslt = 0
  694. arg_msg = ls_msg
  695. GOTO ext
  696. END IF
  697. ext:
  698. IF rslt = 0 THEN
  699. MessageBox('ERROR', arg_msg)
  700. ELSE
  701. MessageBox('OK', '上传成功')
  702. END IF
  703. end event
  704. event ue_pricelist_ch();IF Not dw_price_edit THEN RETURN
  705. Long row
  706. row = dw_1.GetRow()
  707. IF row <= 0 THEN RETURN
  708. Long ll_mtrlid
  709. ll_mtrlid = dw_1.Object.mtrlid[row]
  710. Long pricelistid
  711. String pricelistname
  712. String arg_msg = ''
  713. IF uo_saletask_spi.wf_pricelist_ch(ll_mtrlid, pricelistid, pricelistname, arg_msg) <> 1 THEN
  714. IF arg_msg <> '' THEN
  715. MessageBox('错误', arg_msg)
  716. END IF
  717. RETURN
  718. END IF
  719. dw_1.Object.pricelistid[row] = pricelistid
  720. dw_1.Object.pricelistname[row] = pricelistname
  721. end event
  722. event ue_aifmb_download();DataStore ds_productcode
  723. ds_productcode = Create DataStore
  724. uo_aifmb = Create uo_aifmb
  725. Int rslt = 1
  726. String arg_msg
  727. DateTime ld_starttime, ld_endtime
  728. //IF cbx_begin.Checked THEN
  729. // ld_starttime = DateTime(Date(em_3.Text), Time(0))
  730. //ELSE
  731. SetNull(ld_starttime)
  732. //END IF
  733. //IF cbx_end.Checked THEN
  734. // ld_endtime = DateTime(Date(em_4.Text), Time(0))
  735. //ELSE
  736. SetNull(ld_endtime)
  737. //END IF
  738. ds_productcode.DataObject = 'ds_aifmb_searchproductentrelation'
  739. Long ll_entids[]
  740. Long ll_curEntid
  741. IF uo_aifmb.uf_getlocaluserid(ll_curEntid, arg_msg) <> 1 THEN
  742. rslt = 0
  743. GOTO ext
  744. END IF
  745. ll_entids[1] = ll_curEntid
  746. Long ins_nodeid_arr[]
  747. IF uo_aifmb.uf_searchproductentrelationlist(False, ld_starttime, ld_endtime, '', ins_nodeid_arr,ll_entids, 0, 0, ds_productcode, arg_msg) <> 1 THEN
  748. rslt = 0
  749. GOTO ext
  750. END IF
  751. Long i
  752. Long ll_cnt
  753. s_import_mtrlname s_import
  754. String ls_msg = ''
  755. FOR i = 1 To ds_productcode.RowCount()
  756. s_import.im_type = 1
  757. s_import.im_id = String(ds_productcode.Object.relationid[i])
  758. SELECT count(0)
  759. INTO :ll_cnt
  760. FROM eb_import_mtrlname
  761. WHERE im_type = :s_import.im_type
  762. And im_id = :s_import.im_id;
  763. IF sqlca.SQLCode <> 0 THEN
  764. ls_msg += '查询产品是否已经存在失败,' + sqlca.SQLErrText + '~r~n'
  765. CONTINUE
  766. END IF
  767. IF ll_cnt > 0 THEN
  768. CONTINUE
  769. END IF
  770. s_import.mtrlid = ds_productcode.Object.mtrlid[i]
  771. s_import.eb_num = 0
  772. s_import.eb_price = ds_productcode.Object.mprice[i]
  773. s_import.eb_type = ''
  774. s_import.eb_stuffstatus = ''
  775. s_import.eb_title = ds_productcode.Object.mtrlname[i]
  776. s_import.eb_locationstate = ''
  777. s_import.eb_locationcity = ''
  778. s_import.eb_cid = string(ds_productcode.Object.NodeID[i])
  779. s_import.numiid = string(ds_productcode.Object.ProductID[i])
  780. s_import.props = ''
  781. s_import.im_userid = ''
  782. IF ins_import.uf_save(s_import, arg_msg, True) <> 1 THEN
  783. ls_msg += '保存产品失败,' + arg_msg + '~r~n'
  784. CONTINUE
  785. END IF
  786. NEXT
  787. IF ls_msg <> '' THEN
  788. rslt = 0
  789. arg_msg = ls_msg
  790. GOTO ext
  791. END IF
  792. ext:
  793. Destroy ds_productcode
  794. Destroy uo_aifmb
  795. cb_reflash.TriggerEvent(Clicked!)
  796. IF rslt = 0 THEN
  797. MessageBox('ERROR', arg_msg)
  798. ELSE
  799. MessageBox('OK', '保存成功')
  800. END IF
  801. end event
  802. public function integer wf_save (ref string arg_msg);Int rslt = 1
  803. Long i
  804. s_import_mtrlname s_import, s_empty
  805. FOR i = 1 To dw_1.RowCount()
  806. IF dw_1.Object.ch[i] <> 1 THEN CONTINUE
  807. s_import = s_empty
  808. s_import.im_type = dw_1.Object.im_type[i]
  809. s_import.im_id = dw_1.Object.im_id[i]
  810. s_import.mtrlid = dw_1.Object.mtrlid[i]
  811. s_import.eb_num = dw_1.Object.eb_num[i]
  812. s_import.eb_price = dw_1.Object.eb_price[i]
  813. s_import.eb_type = dw_1.Object.eb_type[i]
  814. s_import.eb_stuffstatus = dw_1.Object.eb_stuffstatus[i]
  815. s_import.eb_title = dw_1.Object.eb_title[i]
  816. s_import.eb_locationstate = dw_1.Object.eb_locationstate[i]
  817. s_import.eb_locationcity = dw_1.Object.eb_locationcity[i]
  818. s_import.eb_cid = dw_1.Object.eb_cid[i]
  819. s_import.numIid = dw_1.Object.numIid[i]
  820. s_import.props = dw_1.Object.props[i]
  821. s_import.status_name = dw_1.Object.status_name[i]
  822. s_import.woodcode_name = dw_1.Object.woodcode_name[i]
  823. s_import.pcode_name = dw_1.Object.pcode_name[i]
  824. s_import.mx_flag = dw_1.Object.mx_flag[i]
  825. IF ins_import.uf_save(s_import, arg_msg, False) <> 1 THEN
  826. rslt = 0
  827. arg_msg = '第' + String(i) + '行' + arg_msg
  828. GOTO ext
  829. END IF
  830. NEXT
  831. GOTO ext
  832. ext:
  833. IF rslt = 1 THEN
  834. COMMIT;
  835. ELSE
  836. ROLLBACK;
  837. END IF
  838. RETURN rslt
  839. end function
  840. public subroutine wf_selectall ();Long ll_check
  841. IF cbx_1.Checked THEN
  842. ll_check = 1
  843. ELSE
  844. ll_check = 0
  845. END IF
  846. Long i
  847. FOR i = 1 To dw_1.RowCount()
  848. dw_1.Object.ch[i] = ll_check
  849. NEXT
  850. end subroutine
  851. public subroutine wf_face ();Long i
  852. ddlb_im_type.Enabled = Not (dw_edit_mode Or dw_mx_edit Or dw_price_edit)
  853. cb_selectuser.Enabled = Not (dw_edit_mode Or dw_mx_edit Or dw_price_edit)
  854. cb_excel.Enabled = Not (dw_edit_mode Or dw_mx_edit Or dw_price_edit)
  855. cb_reflash.Enabled = Not (dw_edit_mode Or dw_mx_edit Or dw_price_edit)
  856. cb_p_edit.Enabled = Not (dw_mx_edit Or dw_price_edit)
  857. cb_mtrl.Enabled = Not (dw_edit_mode Or dw_mx_edit Or dw_price_edit)
  858. cb_copy.Enabled = Not (dw_edit_mode Or dw_mx_edit Or dw_price_edit)
  859. cb_sync.Enabled = Not (dw_edit_mode Or dw_mx_edit Or dw_price_edit)
  860. cb_requestquote.Enabled = Not (dw_edit_mode Or dw_mx_edit Or dw_price_edit)
  861. cb_getanswer.Enabled = Not (dw_edit_mode Or dw_mx_edit Or dw_price_edit)
  862. cb_edit.Enabled = Not(dw_mx_edit Or dw_price_edit)
  863. cb_del.Enabled = Not(dw_mx_edit Or dw_price_edit)
  864. cb_price_edit.Enabled = Not (dw_edit_mode Or dw_mx_edit)
  865. cb_price_cancel.Enabled = Not (dw_edit_mode Or dw_mx_edit) And dw_price_edit
  866. Long ll_row
  867. ll_row = dw_1.GetRow()
  868. Boolean mx_flag = False
  869. IF ll_row > 0 THEN
  870. mx_flag = (dw_1.Object.mx_flag[ll_row] = 1)
  871. END IF
  872. cb_edit_mx.Enabled = Not (dw_edit_mode Or dw_price_edit) And mx_flag
  873. cb_undo_mx.Enabled = Not (dw_edit_mode Or dw_price_edit) And mx_flag And dw_mx_edit
  874. cb_add_mx.Enabled = Not (dw_edit_mode Or dw_price_edit) And mx_flag And dw_mx_edit
  875. cb_del_mx.Enabled = Not (dw_edit_mode Or dw_price_edit) And mx_flag And dw_mx_edit
  876. IF dw_mx_edit THEN
  877. FOR i = 1 To ins_mx
  878. dw_2.SetTabOrder(i, i * 10)
  879. NEXT
  880. cb_edit_mx.Text = '保存'
  881. ELSE
  882. FOR i = 1 To ins_mx
  883. dw_2.SetTabOrder(i, 0)
  884. NEXT
  885. cb_edit_mx.Text = '修改'
  886. END IF
  887. IF dw_price_edit THEN
  888. FOR i = 27 To 28
  889. dw_1.SetTabOrder(i, i * 10)
  890. NEXT
  891. cb_price_edit.Text = '保存价格上传策略'
  892. cb_price_edit.normalpicname = 'Save.bmp'
  893. ELSE
  894. FOR i = 27 To 28
  895. dw_1.SetTabOrder(i, 0)
  896. NEXT
  897. cb_price_edit.Text = '修改价格上传策略'
  898. cb_price_edit.normalpicname = 'OPEN.bmp'
  899. END IF
  900. IF dw_edit_mode THEN
  901. FOR i = 1 To ins_child
  902. dw_1.SetTabOrder(i, i * 10)
  903. NEXT
  904. cb_edit.Text = '保存'
  905. cb_edit.normalpicname = 'Save.bmp'
  906. cb_del.Text = '放弃'
  907. cb_del.normalpicname = 'Undo.bmp'
  908. ELSE
  909. FOR i = 1 To ins_child_min - 1
  910. dw_1.SetTabOrder(i, i * 10)
  911. NEXT
  912. FOR i = ins_child_min To ins_child
  913. dw_1.SetTabOrder(i, 0)
  914. NEXT
  915. cb_edit.Text = '修改'
  916. cb_edit.normalpicname = 'OPEN.bmp'
  917. cb_del.Text = '删除'
  918. cb_del.normalpicname = 'delete.bmp'
  919. END IF
  920. cb_price_edit.of_init_draw()
  921. cb_price_edit.of_paint()
  922. cb_price_edit.TriggerEvent('ue_textchange')
  923. cb_edit.of_init_draw()
  924. cb_edit.of_paint()
  925. cb_edit.TriggerEvent('ue_textchange')
  926. cb_del.of_init_draw()
  927. cb_del.of_paint()
  928. cb_del.TriggerEvent('ue_textchange')
  929. end subroutine
  930. public function integer wf_del (ref string arg_msg);Int rslt = 1
  931. Long i
  932. FOR i = 1 To dw_1.RowCount()
  933. IF dw_1.Object.ch[i] <> 1 THEN CONTINUE
  934. IF ins_import.uf_del(dw_1.Object.im_type[i], dw_1.Object.im_id[i], arg_msg, False) <> 1 THEN
  935. rslt = 0
  936. arg_msg = '第' + String(i) + '行,' + arg_msg
  937. GOTO ext
  938. END IF
  939. NEXT
  940. ext:
  941. IF rslt = 1 THEN
  942. COMMIT;
  943. ELSE
  944. ROLLBACK;
  945. END IF
  946. RETURN rslt
  947. end function
  948. public function integer wf_from_ole (ref s_import_mtrlname arg_s_import, oleobject arg_import, ref string arg_msg);Int rslt = 1
  949. IF IsNull(arg_import) THEN
  950. rslt = 0
  951. arg_msg = 'ole对象为空'
  952. GOTO ext
  953. END IF
  954. TRY
  955. arg_s_import.im_type = arg_import.im_type
  956. arg_s_import.im_id = arg_import.im_id
  957. arg_s_import.mtrlid = arg_import.mtrlid
  958. arg_s_import.eb_num = arg_import.eb_num
  959. arg_s_import.eb_price = arg_import.eb_price
  960. arg_s_import.eb_type = arg_import.eb_type
  961. arg_s_import.eb_stuffstatus = arg_import.eb_stuffstatus
  962. arg_s_import.eb_title = arg_import.eb_title
  963. arg_s_import.eb_dscrp = arg_import.eb_dscrp
  964. arg_s_import.eb_locationstate = arg_import.eb_locationstate
  965. arg_s_import.eb_locationcity = arg_import.eb_locationcity
  966. arg_s_import.eb_cid = arg_import.eb_cid
  967. arg_s_import.numIid = arg_import.numIid
  968. arg_s_import.props = arg_import.props
  969. arg_s_import.im_userid = arg_import.im_userid
  970. Catch (throwable ex)
  971. rslt = 0
  972. arg_msg = ex.Text
  973. END TRY
  974. ext:
  975. RETURN rslt
  976. end function
  977. public function integer wf_to_ole (s_import_mtrlname arg_s_import, oleobject arg_import, ref string arg_msg);Int rslt = 1
  978. IF IsNull(arg_import) THEN
  979. rslt = 0
  980. arg_msg = 'ole对象为空'
  981. GOTO ext
  982. END IF
  983. TRY
  984. arg_import.im_type = arg_s_import.im_type
  985. arg_import.im_id = arg_s_import.im_id
  986. arg_import.mtrlid = arg_s_import.mtrlid
  987. arg_import.eb_num = arg_s_import.eb_num
  988. arg_import.eb_price = arg_s_import.eb_price
  989. arg_import.eb_type = arg_s_import.eb_type
  990. arg_import.eb_stuffstatus = arg_s_import.eb_stuffstatus
  991. arg_import.eb_title = arg_s_import.eb_title
  992. arg_import.eb_dscrp = arg_s_import.eb_dscrp
  993. arg_import.eb_locationstate = arg_s_import.eb_locationstate
  994. arg_import.eb_locationcity = arg_s_import.eb_locationcity
  995. arg_import.eb_cid = arg_s_import.eb_cid
  996. arg_import.numIid = arg_s_import.numIid
  997. arg_import.props = arg_s_import.props
  998. Catch (throwable ex)
  999. rslt = 0
  1000. arg_msg = ex.Text
  1001. END TRY
  1002. ext:
  1003. RETURN rslt
  1004. end function
  1005. public function integer wf_taobao_haspower (ref string arg_msg);Int rslt = 1
  1006. IF Not sys_power_issuper And ins_user.im_type <> 5 THEN
  1007. rslt = 0
  1008. arg_msg = '当前选择的不是淘宝帐号'
  1009. GOTO ext
  1010. END IF
  1011. IF Not ins_connected THEN
  1012. rslt = 0
  1013. arg_msg = '连接LJLib.TaoBao.dll失败'
  1014. GOTO ext
  1015. END IF
  1016. IF Not sys_power_issuper And ins_user.im_userid <> ins_taobao.username THEN
  1017. ins_taobao.Logout()
  1018. END IF
  1019. IF Not ins_taobao.HasPower() THEN
  1020. rslt = 0
  1021. arg_msg = '淘宝控件未得到授权'
  1022. GOTO ext
  1023. END IF
  1024. IF Not sys_power_issuper And ins_user.im_userid <> ins_taobao.username THEN
  1025. ins_taobao.Logout()
  1026. rslt = 0
  1027. arg_msg = '请用指定帐号登录授权:' + ins_user.im_userid
  1028. GOTO ext
  1029. END IF
  1030. ext:
  1031. RETURN rslt
  1032. end function
  1033. public function integer wf_save_mx (ref string arg_msg);Int rslt = 1
  1034. Long i
  1035. Long im_type
  1036. String im_id
  1037. im_type = dw_1.Object.im_type[dw_1.GetRow()]
  1038. im_id = dw_1.Object.im_id[dw_1.GetRow()]
  1039. s_import_mtrlnamemx mx[]
  1040. Long cnt = 0
  1041. FOR i = 1 To dw_2.RowCount()
  1042. IF dw_2.Object.pros[i] = '' THEN CONTINUE
  1043. cnt++
  1044. mx[cnt].pros = dw_2.Object.pros[i]
  1045. mx[cnt].mtrlid = dw_2.Object.mtrlid[i]
  1046. mx[cnt].status_name = dw_2.Object.status_name[i]
  1047. mx[cnt].woodcode_name = dw_2.Object.woodcode_name[i]
  1048. mx[cnt].pcode_name = dw_2.Object.pcode_name[i]
  1049. NEXT
  1050. IF ins_import.uf_savemx(im_type, im_id, mx, arg_msg) <> 1 THEN
  1051. rslt = 0
  1052. GOTO ext
  1053. END IF
  1054. ext:
  1055. RETURN rslt
  1056. end function
  1057. public function integer wf_save_price (ref string arg_msg);Int rslt = 1
  1058. Long i
  1059. Long ll_im_type
  1060. String ls_im_id
  1061. String ls_pricetype, ls_priceparam
  1062. Long ll_priceneedaudit, ll_pricemode, ll_pricelistid
  1063. s_import_mtrlname s_import, s_empty
  1064. FOR i = 1 To dw_1.RowCount()
  1065. IF dw_1.Object.ch[i] <> 1 THEN CONTINUE
  1066. ll_im_type = dw_1.Object.im_type[i]
  1067. ls_im_id = dw_1.Object.im_id[i]
  1068. ls_pricetype = dw_1.Object.pricetype[i]
  1069. ls_priceparam = dw_1.Object.priceparam[i]
  1070. ll_priceneedaudit = dw_1.Object.priceneedaudit[i]
  1071. ll_pricemode = dw_1.Object.pricemode[i]
  1072. ll_pricelistid = dw_1.Object.pricelistid[i]
  1073. UPDATE eb_import_mtrlname
  1074. SET pricetype = :ls_pricetype,
  1075. priceparam = :ls_priceparam,
  1076. priceneedaudit = :ll_priceneedaudit,
  1077. pricemode = :ll_pricemode,
  1078. pricelistid = :ll_pricelistid
  1079. WHERE (im_type = :ll_im_type)
  1080. And (im_id = :ls_im_id);
  1081. IF sqlca.SQLCode <> 0 THEN
  1082. rslt = 0
  1083. arg_msg = '更新网店产品定义的价格上传策略失败,' + sqlca.SQLErrText
  1084. GOTO ext
  1085. END IF
  1086. NEXT
  1087. GOTO ext
  1088. ext:
  1089. IF rslt = 1 THEN
  1090. COMMIT;
  1091. ELSE
  1092. ROLLBACK;
  1093. END IF
  1094. RETURN rslt
  1095. end function
  1096. on w_import_mtrlname.create
  1097. int iCurrent
  1098. call super::create
  1099. this.cb_reflash=create cb_reflash
  1100. this.dw_1=create dw_1
  1101. this.cb_edit=create cb_edit
  1102. this.cb_del=create cb_del
  1103. this.cb_mtrl=create cb_mtrl
  1104. this.cb_p_edit=create cb_p_edit
  1105. this.ddlb_im_type=create ddlb_im_type
  1106. this.cb_copy=create cb_copy
  1107. this.cb_sync=create cb_sync
  1108. this.cbx_1=create cbx_1
  1109. this.cb_mode=create cb_mode
  1110. this.st_2=create st_2
  1111. this.sle_userid=create sle_userid
  1112. this.cb_selectuser=create cb_selectuser
  1113. this.cb_excel=create cb_excel
  1114. this.dw_2=create dw_2
  1115. this.cb_edit_mx=create cb_edit_mx
  1116. this.cb_undo_mx=create cb_undo_mx
  1117. this.cb_add_mx=create cb_add_mx
  1118. this.cb_del_mx=create cb_del_mx
  1119. this.cb_price_edit=create cb_price_edit
  1120. this.cb_price_cancel=create cb_price_cancel
  1121. this.cb_requestquote=create cb_requestquote
  1122. this.cb_getanswer=create cb_getanswer
  1123. this.ln_bar=create ln_bar
  1124. this.ln_bar2=create ln_bar2
  1125. this.r_bar=create r_bar
  1126. this.ln_1=create ln_1
  1127. this.ln_2=create ln_2
  1128. iCurrent=UpperBound(this.Control)
  1129. this.Control[iCurrent+1]=this.cb_reflash
  1130. this.Control[iCurrent+2]=this.dw_1
  1131. this.Control[iCurrent+3]=this.cb_edit
  1132. this.Control[iCurrent+4]=this.cb_del
  1133. this.Control[iCurrent+5]=this.cb_mtrl
  1134. this.Control[iCurrent+6]=this.cb_p_edit
  1135. this.Control[iCurrent+7]=this.ddlb_im_type
  1136. this.Control[iCurrent+8]=this.cb_copy
  1137. this.Control[iCurrent+9]=this.cb_sync
  1138. this.Control[iCurrent+10]=this.cbx_1
  1139. this.Control[iCurrent+11]=this.cb_mode
  1140. this.Control[iCurrent+12]=this.st_2
  1141. this.Control[iCurrent+13]=this.sle_userid
  1142. this.Control[iCurrent+14]=this.cb_selectuser
  1143. this.Control[iCurrent+15]=this.cb_excel
  1144. this.Control[iCurrent+16]=this.dw_2
  1145. this.Control[iCurrent+17]=this.cb_edit_mx
  1146. this.Control[iCurrent+18]=this.cb_undo_mx
  1147. this.Control[iCurrent+19]=this.cb_add_mx
  1148. this.Control[iCurrent+20]=this.cb_del_mx
  1149. this.Control[iCurrent+21]=this.cb_price_edit
  1150. this.Control[iCurrent+22]=this.cb_price_cancel
  1151. this.Control[iCurrent+23]=this.cb_requestquote
  1152. this.Control[iCurrent+24]=this.cb_getanswer
  1153. this.Control[iCurrent+25]=this.ln_bar
  1154. this.Control[iCurrent+26]=this.ln_bar2
  1155. this.Control[iCurrent+27]=this.r_bar
  1156. this.Control[iCurrent+28]=this.ln_1
  1157. this.Control[iCurrent+29]=this.ln_2
  1158. end on
  1159. on w_import_mtrlname.destroy
  1160. call super::destroy
  1161. destroy(this.cb_reflash)
  1162. destroy(this.dw_1)
  1163. destroy(this.cb_edit)
  1164. destroy(this.cb_del)
  1165. destroy(this.cb_mtrl)
  1166. destroy(this.cb_p_edit)
  1167. destroy(this.ddlb_im_type)
  1168. destroy(this.cb_copy)
  1169. destroy(this.cb_sync)
  1170. destroy(this.cbx_1)
  1171. destroy(this.cb_mode)
  1172. destroy(this.st_2)
  1173. destroy(this.sle_userid)
  1174. destroy(this.cb_selectuser)
  1175. destroy(this.cb_excel)
  1176. destroy(this.dw_2)
  1177. destroy(this.cb_edit_mx)
  1178. destroy(this.cb_undo_mx)
  1179. destroy(this.cb_add_mx)
  1180. destroy(this.cb_del_mx)
  1181. destroy(this.cb_price_edit)
  1182. destroy(this.cb_price_cancel)
  1183. destroy(this.cb_requestquote)
  1184. destroy(this.cb_getanswer)
  1185. destroy(this.ln_bar)
  1186. destroy(this.ln_bar2)
  1187. destroy(this.r_bar)
  1188. destroy(this.ln_1)
  1189. destroy(this.ln_2)
  1190. end on
  1191. event close;call super::close;IF IsValid(w_import_mtrlname_dscrp) THEN
  1192. Close(w_import_mtrlname_dscrp)
  1193. END IF
  1194. Destroy ins_import
  1195. destroy ins_comapp
  1196. end event
  1197. event resize;call super::resize;r_bar.Width = this.width
  1198. ln_bar.endx = this.width
  1199. ln_bar2.endx = this.width
  1200. ln_1.endx = this.width
  1201. ln_2.endx = this.width
  1202. dw_1.height = this.WorkSpaceHeight() - dw_1.Y
  1203. dw_1.Width = this.WorkSpaceWidth() - dw_1.X - dw_2.Width
  1204. dw_2.height = this.WorkSpaceHeight() - dw_2.Y
  1205. long deltax
  1206. deltax = dw_1.X + dw_1.Width - dw_2.X
  1207. dw_2.X = dw_2.X + deltax
  1208. cb_edit_mx.X = cb_edit_mx.X + deltax
  1209. cb_undo_mx.X = cb_undo_mx.X + deltax
  1210. cb_add_mx.X = cb_add_mx.X + deltax
  1211. cb_del_mx.X = cb_del_mx.X + deltax
  1212. end event
  1213. event open;call super::open;ins_comapp = Create uo_ljlib_taobao_comapp
  1214. String arg_msg
  1215. ins_comapp.uf_init(ins_taobao, ins_create, ins_connected, ins_inited, arg_msg)
  1216. ins_import = Create uo_import_mtrlname
  1217. dw_1.SetTransObject(sqlca)
  1218. dw_2.SetTransObject(sqlca)
  1219. // 选择电商帐号
  1220. IF sys_power_issuper THEN
  1221. ddlb_im_type.AddItem('全部')
  1222. END IF
  1223. ins_user.UserID = 0
  1224. ins_user.im_type = 0
  1225. ins_user.im_userid = ''
  1226. cb_reflash.TriggerEvent(Clicked!)
  1227. wf_face()
  1228. end event
  1229. type cb_func from w_publ_base`cb_func within w_import_mtrlname
  1230. boolean visible = false
  1231. end type
  1232. type cb_exit from w_publ_base`cb_exit within w_import_mtrlname
  1233. integer x = 1362
  1234. integer width = 151
  1235. integer height = 164
  1236. integer picsize = 16
  1237. toolbaralignment pic_align = alignattop!
  1238. boolean border = false
  1239. end type
  1240. type cb_reflash from uo_imflatbutton within w_import_mtrlname
  1241. integer width = 151
  1242. integer height = 164
  1243. integer taborder = 30
  1244. boolean bringtotop = true
  1245. string text = "刷新"
  1246. string normalpicname = "refresh.BMP"
  1247. integer picsize = 16
  1248. toolbaralignment pic_align = alignattop!
  1249. boolean border = false
  1250. end type
  1251. event clicked;call super::clicked;Long ins_im_type
  1252. IF ddlb_im_type.Text = '模板' THEN
  1253. ins_im_type = 0
  1254. ELSEIF ddlb_im_type.Text = '亚洲国际电商' THEN
  1255. ins_im_type = 1
  1256. ELSEIF ddlb_im_type.Text = '淘宝' THEN
  1257. ins_im_type = 5
  1258. ELSEIF ddlb_im_type.Text = '京东' THEN
  1259. ins_im_type = 6
  1260. ELSE
  1261. ins_im_type = -1
  1262. END IF
  1263. Long ll_is_super = 0
  1264. IF sys_power_issuper THEN
  1265. ll_is_super = 1
  1266. END IF
  1267. dw_1.Retrieve(ins_im_type, ins_user.im_userid, ll_is_super)
  1268. Parent.TriggerEvent('ue_retrieve_mx')
  1269. Parent.TriggerEvent('ue_retrieve_dw_mx')
  1270. dw_1.SelectRow(0, False)
  1271. IF dw_1.GetRow() > 0 THEN
  1272. dw_1.SelectRow(dw_1.GetRow(), True)
  1273. END IF
  1274. wf_face()
  1275. end event
  1276. type dw_1 from u_dw_rbtnfilter within w_import_mtrlname
  1277. event ue_dwndropdown pbm_dwndropdown
  1278. integer y = 300
  1279. integer width = 1056
  1280. integer height = 1440
  1281. integer taborder = 30
  1282. boolean bringtotop = true
  1283. string dataobject = "dw_import_mtrlname"
  1284. boolean hscrollbar = true
  1285. boolean vscrollbar = true
  1286. boolean hsplitscroll = true
  1287. boolean rbutton_filter_use = true
  1288. boolean rbutton_setposition_use = true
  1289. boolean titleclick_sort_use = true
  1290. end type
  1291. event ue_dwndropdown;IF Not dw_edit_mode THEN RETURN
  1292. Long row
  1293. String column
  1294. s_props_openwin s_win
  1295. String ls_rtn
  1296. row = dw_1.GetRow()
  1297. column = dw_1.GetColumnName()
  1298. s_win.arg_x = This.X + This.PointerX() + Parent.X
  1299. s_win.arg_y = This.Y + This.PointerY() + Parent.Y
  1300. IF row > 0 THEN
  1301. s_win.props = dw_1.Object.props[row]
  1302. IF column = 'status_name' THEN
  1303. OpenWithParm(w_props_ch, s_win)
  1304. ls_rtn = Message.StringParm
  1305. IF IsNull(ls_rtn) THEN RETURN 1
  1306. dw_1.Object.status_name[row] = ls_rtn
  1307. RETURN 1
  1308. ELSEIF column = 'woodcode_name' THEN
  1309. OpenWithParm(w_props_ch, s_win)
  1310. ls_rtn = Message.StringParm
  1311. IF IsNull(ls_rtn) THEN RETURN 1
  1312. dw_1.Object.woodcode_name[row] = ls_rtn
  1313. RETURN 1
  1314. ELSEIF column = 'pcode_name' THEN
  1315. OpenWithParm(w_props_ch, s_win)
  1316. ls_rtn = Message.StringParm
  1317. IF IsNull(ls_rtn) THEN RETURN 1
  1318. dw_1.Object.pcode_name[row] = ls_rtn
  1319. RETURN 1
  1320. END IF
  1321. END IF
  1322. end event
  1323. event clicked;call super::clicked;IF row > 0 THEN
  1324. dw_1.SetRow(row)
  1325. END IF
  1326. end event
  1327. event doubleclicked;call super::doubleclicked;
  1328. IF dw_1.AcceptText() <> 1 THEN RETURN
  1329. String ls_name
  1330. ls_name = dwo.Name
  1331. IF dw_edit_mode THEN
  1332. IF ls_name = 'mtrlcode' THEN
  1333. Parent.TriggerEvent('ue_f8')
  1334. ELSEIF Pos(ls_name, '_t') = Len(ls_name) - 1 THEN
  1335. String ls_type
  1336. ls_type = dwo.Type
  1337. IF Lower(ls_type) <> 'text' THEN RETURN
  1338. String ls_colname
  1339. ls_colname = Mid(ls_name, 1, Len(ls_name) - 2)
  1340. IF Lower(dw_1.Describe(ls_colname + ".Type")) <> 'column' THEN RETURN
  1341. Long ll_id
  1342. ll_id = Long(dw_1.Describe(ls_colname + ".ID"))
  1343. IF ll_id < ins_child_min Or ll_id > ins_child THEN RETURN
  1344. IF ls_colname = 'mtrlcode' THEN RETURN
  1345. ls_type = Lower(dw_1.Describe(ls_colname + ".ColType"))
  1346. Any ll_value
  1347. Long ll_firstrow = 0
  1348. Long i
  1349. FOR i = 1 To dw_1.RowCount()
  1350. IF dw_1.Object.ch[i] <> 1 THEN CONTINUE
  1351. IF ll_firstrow = 0 THEN
  1352. ll_firstrow = i
  1353. IF ls_type = 'date' THEN
  1354. ll_value = dw_1.GetItemDate(ll_firstrow, ls_colname)
  1355. ELSEIF ls_type = 'datetime' THEN
  1356. ll_value = dw_1.GetItemDateTime(ll_firstrow, ls_colname)
  1357. ELSEIF ls_type = 'time' Or Pos(ls_type, 'time') > 0 THEN
  1358. ll_value = dw_1.GetItemTime(ll_firstrow, ls_colname)
  1359. ELSEIF Pos(ls_type, 'dec') > 0 THEN
  1360. ll_value = dw_1.GetItemDecimal(ll_firstrow, ls_colname)
  1361. ELSEIF Pos(ls_type, 'char') > 0 THEN
  1362. ll_value = dw_1.GetItemString(ll_firstrow, ls_colname)
  1363. ELSE
  1364. ll_value = dw_1.GetItemNumber(ll_firstrow, ls_colname)
  1365. END IF
  1366. ELSE
  1367. dw_1.SetItem(i, ls_colname, ll_value)
  1368. END IF
  1369. NEXT
  1370. END IF
  1371. END IF
  1372. IF dw_price_edit THEN
  1373. If (ls_name = 'pricetype' Or ls_name = 'priceparam') And row > 0 THEN
  1374. Open(w_aifmb_datetime_parm_ch)
  1375. s_aifmb_datetime_parm_ch s_tran
  1376. s_tran = Message.PowerObjectParm
  1377. IF s_tran.ifok = 1 THEN
  1378. dw_1.Object.pricetype[row] = s_tran.pricetype
  1379. dw_1.Object.priceparam[row] = s_tran.priceparam
  1380. END IF
  1381. END IF
  1382. if (ls_name = 'pricelistid' OR ls_name = 'pricelistname') then
  1383. parent.triggerevent('ue_pricelist_ch')
  1384. end if
  1385. END IF
  1386. end event
  1387. event rowfocuschanged;call super::rowfocuschanged;This.SelectRow(0, False)
  1388. IF currentrow > 0 THEN
  1389. This.SelectRow(currentrow, True)
  1390. END IF
  1391. Parent.TriggerEvent('ue_retrieve_mx')
  1392. Parent.TriggerEvent('ue_retrieve_dw_mx')
  1393. wf_face()
  1394. end event
  1395. event rowfocuschanging;call super::rowfocuschanging;IF dw_mx_edit THEN RETURN 1
  1396. end event
  1397. event itemchanged;call super::itemchanged;String ls_name
  1398. ls_name = dwo.Name
  1399. Long ll_mtrlid
  1400. IF ls_name = 'pricemode' And row > 0 THEN
  1401. dw_1.AcceptText()
  1402. IF dw_1.Object.pricemode[row] = 1 THEN
  1403. Parent.TriggerEvent('ue_pricelist_ch')
  1404. END IF
  1405. END IF
  1406. end event
  1407. type cb_edit from uo_imflatbutton within w_import_mtrlname
  1408. integer x = 155
  1409. integer width = 151
  1410. integer height = 164
  1411. integer taborder = 30
  1412. boolean bringtotop = true
  1413. string text = "修改"
  1414. string normalpicname = "OPEN.bmp"
  1415. integer picsize = 16
  1416. toolbaralignment pic_align = alignattop!
  1417. boolean border = false
  1418. end type
  1419. event clicked;call super::clicked;String arg_msg
  1420. IF dw_edit_mode THEN
  1421. IF dw_1.AcceptText() <> 1 THEN RETURN
  1422. IF wf_save(arg_msg) <> 1 THEN
  1423. MessageBox('错误', arg_msg)
  1424. RETURN
  1425. END IF
  1426. END IF
  1427. dw_edit_mode = Not dw_edit_mode
  1428. IF dw_edit_mode THEN
  1429. cbx_1.Checked = True
  1430. wf_selectall()
  1431. ELSE
  1432. cb_reflash.TriggerEvent(Clicked!)
  1433. END IF
  1434. wf_face()
  1435. end event
  1436. type cb_del from uo_imflatbutton within w_import_mtrlname
  1437. integer x = 311
  1438. integer width = 151
  1439. integer height = 164
  1440. integer taborder = 40
  1441. boolean bringtotop = true
  1442. string text = "删除"
  1443. string normalpicname = "delete.bmp"
  1444. integer picsize = 16
  1445. toolbaralignment pic_align = alignattop!
  1446. boolean border = false
  1447. end type
  1448. event clicked;call super::clicked;String ls_msg
  1449. IF dw_edit_mode THEN
  1450. dw_edit_mode = Not dw_edit_mode
  1451. cb_reflash.TriggerEvent(Clicked!)
  1452. wf_face()
  1453. ELSE
  1454. IF MessageBox('提问', '是否要删除选中的记录?', Question!, YesNo!) <> 1 THEN
  1455. RETURN
  1456. END IF
  1457. IF wf_del(ls_msg) <> 1 THEN
  1458. MessageBox('错误', ls_msg)
  1459. RETURN
  1460. END IF
  1461. cb_reflash.TriggerEvent(Clicked!)
  1462. END IF
  1463. end event
  1464. type cb_mtrl from uo_imflatbutton within w_import_mtrlname
  1465. integer x = 745
  1466. integer width = 274
  1467. integer height = 164
  1468. integer taborder = 50
  1469. boolean bringtotop = true
  1470. string text = "选物料"
  1471. string normalpicname = "new.BMP"
  1472. integer picsize = 16
  1473. toolbaralignment pic_align = alignattop!
  1474. boolean border = false
  1475. end type
  1476. event clicked;call super::clicked;parent.triggerevent('ue_new_mtrl')
  1477. end event
  1478. type cb_p_edit from uo_imflatbutton within w_import_mtrlname
  1479. integer x = 466
  1480. integer width = 274
  1481. integer height = 164
  1482. integer taborder = 60
  1483. boolean bringtotop = true
  1484. string text = "批修改"
  1485. string normalpicname = "p2.BMP"
  1486. integer picsize = 16
  1487. toolbaralignment pic_align = alignattop!
  1488. boolean border = false
  1489. end type
  1490. event clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu
  1491. String menustr
  1492. IF dw_edit_mode THEN
  1493. menustr = "Text=批选物料~tEvent=ue_p_mtrl"
  1494. menustr += "|Text=自动配对物料~tEvent=ue_p_mtrl_auto"
  1495. ELSE
  1496. menustr = "Text=批设描述~tEvent=ue_p_dscrp"
  1497. END IF
  1498. IF Len(Trim(menustr)) <> 0 THEN
  1499. dmPopupMenu = Create m_Dfc_Control_PopupMenu
  1500. dmPopupMenu.mf_BuildMenu(This, menustr)
  1501. dmPopupMenu.mf_PopMenu()
  1502. Destroy dmPopupMenu
  1503. END IF
  1504. end event
  1505. type ddlb_im_type from dropdownlistbox within w_import_mtrlname
  1506. integer x = 334
  1507. integer y = 184
  1508. integer width = 480
  1509. integer height = 636
  1510. integer taborder = 30
  1511. boolean bringtotop = true
  1512. integer textsize = -9
  1513. integer weight = 400
  1514. fontcharset fontcharset = gb2312charset!
  1515. fontpitch fontpitch = variable!
  1516. string facename = "宋体"
  1517. long textcolor = 33554432
  1518. string text = "模板"
  1519. boolean sorted = false
  1520. string item[] = {"模板","亚洲国际电商","淘宝","京东"}
  1521. borderstyle borderstyle = stylelowered!
  1522. end type
  1523. event selectionchanged;Long ins_im_type
  1524. IF ddlb_im_type.Text = '模板' THEN
  1525. ins_im_type = 0
  1526. ELSEIF ddlb_im_type.Text = '亚洲国际电商' THEN
  1527. ins_im_type = 1
  1528. ELSEIF ddlb_im_type.Text = '淘宝' THEN
  1529. ins_im_type = 5
  1530. ELSEIF ddlb_im_type.Text = '京东' THEN
  1531. ins_im_type = 6
  1532. ELSE
  1533. ins_im_type = -1
  1534. END IF
  1535. IF ins_im_type <> ins_user.im_type THEN
  1536. IF ins_im_type = 1 Or ins_im_type = 5 Or ins_im_type = 6 THEN
  1537. Parent.TriggerEvent('ue_select_user')
  1538. RETURN
  1539. END IF
  1540. END IF
  1541. IF ins_im_type = 0 THEN
  1542. ins_user.UserID = 0
  1543. ins_user.im_type = 0
  1544. ins_user.im_userid = ''
  1545. sle_userid.Text = ''
  1546. END IF
  1547. cb_reflash.triggerevent(clicked!)
  1548. end event
  1549. type cb_copy from uo_imflatbutton within w_import_mtrlname
  1550. boolean visible = false
  1551. integer x = 2231
  1552. integer y = 4
  1553. integer width = 151
  1554. integer height = 164
  1555. integer taborder = 40
  1556. boolean bringtotop = true
  1557. string text = "复制"
  1558. string normalpicname = "copy.bmp"
  1559. integer picsize = 16
  1560. toolbaralignment pic_align = alignattop!
  1561. boolean border = false
  1562. end type
  1563. event clicked;call super::clicked;//String ls_msg
  1564. //IF dw_edit_mode THEN
  1565. // dw_edit_mode = Not dw_edit_mode
  1566. // cb_reflash.TriggerEvent(Clicked!)
  1567. // wf_face()
  1568. //ELSE
  1569. //
  1570. // IF MessageBox('提问', '是否要删除选中的记录?', Question!, YesNo!) <> 1 THEN
  1571. // RETURN
  1572. // END IF
  1573. //
  1574. // IF wf_del(ls_msg) <> 1 THEN
  1575. // MessageBox('错误', ls_msg)
  1576. // RETURN
  1577. // END IF
  1578. //
  1579. // cb_reflash.TriggerEvent(Clicked!)
  1580. //
  1581. //END IF
  1582. end event
  1583. type cb_sync from uo_imflatbutton within w_import_mtrlname
  1584. integer x = 1024
  1585. integer width = 151
  1586. integer height = 164
  1587. integer taborder = 70
  1588. boolean bringtotop = true
  1589. string text = "同步"
  1590. string normalpicname = "copy.bmp"
  1591. integer picsize = 16
  1592. toolbaralignment pic_align = alignattop!
  1593. boolean border = false
  1594. end type
  1595. event clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu
  1596. String menustr
  1597. menustr = "Text=淘宝下载~tEvent=ue_taobao_download"
  1598. menustr = menustr + "|Text=亚洲下载~tEvent=ue_aifmb_download"
  1599. menustr = menustr + "|Text=-"
  1600. menustr = menustr + "|Text=淘宝上传~tEvent=ue_taobao_upload"
  1601. menustr = menustr + "|Text=亚洲上传~tEvent=ue_aifmb_upload"
  1602. IF Len(Trim(menustr)) <> 0 THEN
  1603. dmPopupMenu = Create m_Dfc_Control_PopupMenu
  1604. dmPopupMenu.mf_BuildMenu(This, menustr)
  1605. dmPopupMenu.mf_PopMenu()
  1606. Destroy dmPopupMenu
  1607. END IF
  1608. end event
  1609. type cbx_1 from checkbox within w_import_mtrlname
  1610. integer x = 32
  1611. integer y = 196
  1612. integer width = 274
  1613. integer height = 56
  1614. boolean bringtotop = true
  1615. integer textsize = -9
  1616. integer weight = 400
  1617. fontcharset fontcharset = gb2312charset!
  1618. fontpitch fontpitch = variable!
  1619. string facename = "宋体"
  1620. long textcolor = 33554432
  1621. long backcolor = 67108864
  1622. string text = "全选"
  1623. end type
  1624. event clicked;wf_selectall()
  1625. end event
  1626. event constructor;this.backcolor = 14215660
  1627. end event
  1628. type cb_mode from uo_imflatbutton within w_import_mtrlname
  1629. integer x = 1518
  1630. integer width = 82
  1631. integer height = 164
  1632. integer taborder = 50
  1633. boolean bringtotop = true
  1634. string text = ">>"
  1635. toolbaralignment pic_align = alignattop!
  1636. boolean border = false
  1637. end type
  1638. event clicked;call super::clicked;IF IsValid(w_import_mtrlname_dscrp) THEN
  1639. Close(w_import_mtrlname_dscrp)
  1640. This.Text = '>>'
  1641. ELSE
  1642. Open(w_import_mtrlname_dscrp)
  1643. This.Text = '<<'
  1644. Parent.TriggerEvent('ue_retrieve_mx')
  1645. END IF
  1646. end event
  1647. type st_2 from statictext within w_import_mtrlname
  1648. integer x = 841
  1649. integer y = 200
  1650. integer width = 274
  1651. integer height = 48
  1652. boolean bringtotop = true
  1653. integer textsize = -9
  1654. integer weight = 400
  1655. fontcharset fontcharset = gb2312charset!
  1656. fontpitch fontpitch = variable!
  1657. string facename = "宋体"
  1658. long textcolor = 33554432
  1659. long backcolor = 67108864
  1660. string text = "当前用户:"
  1661. boolean focusrectangle = false
  1662. end type
  1663. event constructor;this.backcolor = 14215660
  1664. end event
  1665. type sle_userid from singlelineedit within w_import_mtrlname
  1666. integer x = 1125
  1667. integer y = 184
  1668. integer width = 494
  1669. integer height = 84
  1670. integer taborder = 70
  1671. boolean bringtotop = true
  1672. integer textsize = -9
  1673. integer weight = 400
  1674. fontcharset fontcharset = gb2312charset!
  1675. fontpitch fontpitch = variable!
  1676. string facename = "宋体"
  1677. long textcolor = 33554432
  1678. boolean displayonly = true
  1679. borderstyle borderstyle = stylelowered!
  1680. end type
  1681. type cb_selectuser from uo_imflatbutton within w_import_mtrlname
  1682. integer x = 1632
  1683. integer y = 180
  1684. integer width = 256
  1685. integer height = 88
  1686. integer taborder = 50
  1687. boolean bringtotop = true
  1688. string text = "选择"
  1689. string normalpicname = "FIND.BMP"
  1690. integer picsize = 16
  1691. end type
  1692. event clicked;call super::clicked;parent.triggerevent('ue_select_user')
  1693. end event
  1694. type cb_excel from uo_imflatbutton within w_import_mtrlname
  1695. integer x = 1179
  1696. integer width = 178
  1697. integer height = 164
  1698. integer taborder = 30
  1699. boolean bringtotop = true
  1700. string text = "Excel"
  1701. string normalpicname = "excel.bmp"
  1702. integer picsize = 16
  1703. toolbaralignment pic_align = alignattop!
  1704. boolean border = false
  1705. end type
  1706. event clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu
  1707. String menustr
  1708. menustr = "Text=导出Excel~tEvent=ue_xls_export"
  1709. menustr = menustr + "|" + "Text=导入产品编码~tEvent=ue_xls_import_mtrlcode"
  1710. menustr = menustr + "|" + "Text=导入淘宝分销csv~tEvent=ue_csv_import_mtrlcode"
  1711. IF Len(Trim(menustr)) <> 0 THEN
  1712. dmPopupMenu = Create m_Dfc_Control_PopupMenu
  1713. dmPopupMenu.mf_BuildMenu(This, menustr)
  1714. dmPopupMenu.mf_PopMenu()
  1715. Destroy dmPopupMenu
  1716. END IF
  1717. end event
  1718. type dw_2 from u_dw_rbtnfilter within w_import_mtrlname
  1719. event ue_dwndropdown pbm_dwndropdown
  1720. integer x = 1074
  1721. integer y = 388
  1722. integer width = 1742
  1723. integer height = 1116
  1724. integer taborder = 40
  1725. boolean bringtotop = true
  1726. string dataobject = "dw_import_mtrlnamemx"
  1727. boolean hscrollbar = true
  1728. boolean vscrollbar = true
  1729. boolean hsplitscroll = true
  1730. boolean rbutton_filter_use = true
  1731. boolean rbutton_setposition_use = true
  1732. boolean titleclick_sort_use = true
  1733. end type
  1734. event ue_dwndropdown;IF Not dw_mx_edit THEN RETURN
  1735. Long row, ll_prow
  1736. String column
  1737. s_props_openwin s_win
  1738. String ls_rtn
  1739. ll_prow = dw_1.GetRow()
  1740. row = dw_2.GetRow()
  1741. column = dw_2.GetColumnName()
  1742. s_win.arg_x = This.X + This.PointerX() + Parent.X
  1743. s_win.arg_y = This.Y + This.PointerY() + Parent.Y
  1744. IF row > 0 AND ll_prow > 0 THEN
  1745. s_win.props = dw_1.Object.props[ll_prow]
  1746. IF column = 'status_name' THEN
  1747. OpenWithParm(w_props_ch, s_win)
  1748. ls_rtn = Message.StringParm
  1749. IF IsNull(ls_rtn) THEN RETURN 1
  1750. dw_2.Object.status_name[row] = ls_rtn
  1751. RETURN 1
  1752. ELSEIF column = 'woodcode_name' THEN
  1753. OpenWithParm(w_props_ch, s_win)
  1754. ls_rtn = Message.StringParm
  1755. IF IsNull(ls_rtn) THEN RETURN 1
  1756. dw_2.Object.woodcode_name[row] = ls_rtn
  1757. RETURN 1
  1758. ELSEIF column = 'pcode_name' THEN
  1759. OpenWithParm(w_props_ch, s_win)
  1760. ls_rtn = Message.StringParm
  1761. IF IsNull(ls_rtn) THEN RETURN 1
  1762. dw_2.Object.pcode_name[row] = ls_rtn
  1763. RETURN 1
  1764. END IF
  1765. END IF
  1766. end event
  1767. event clicked;call super::clicked;IF row > 0 THEN
  1768. dw_2.SetRow(row)
  1769. END IF
  1770. end event
  1771. event doubleclicked;call super::doubleclicked;IF Not dw_mx_edit THEN RETURN
  1772. IF dw_2.AcceptText() <> 1 THEN RETURN
  1773. String ls_name
  1774. ls_name = dwo.Name
  1775. IF ls_name = 'mtrlcode' THEN
  1776. Parent.TriggerEvent('ue_f9')
  1777. elseif ls_name = 'pros' then
  1778. Parent.TriggerEvent('ue_f10')
  1779. END IF
  1780. end event
  1781. event rowfocuschanged;call super::rowfocuschanged;This.SelectRow(0, False)
  1782. IF currentrow > 0 THEN
  1783. This.SelectRow(currentrow, True)
  1784. END IF
  1785. end event
  1786. type cb_edit_mx from commandbutton within w_import_mtrlname
  1787. integer x = 1097
  1788. integer y = 296
  1789. integer width = 206
  1790. integer height = 84
  1791. integer taborder = 40
  1792. boolean bringtotop = true
  1793. integer textsize = -9
  1794. integer weight = 400
  1795. fontcharset fontcharset = gb2312charset!
  1796. fontpitch fontpitch = variable!
  1797. string facename = "宋体"
  1798. string text = "修改"
  1799. end type
  1800. event clicked;String arg_msg
  1801. IF dw_mx_edit THEN
  1802. dw_2.AcceptText()
  1803. IF wf_save_mx(arg_msg) <> 1 THEN
  1804. MessageBox('ERROR', arg_msg)
  1805. RETURN
  1806. END IF
  1807. END IF
  1808. dw_mx_edit = Not dw_mx_edit
  1809. IF dw_mx_edit THEN
  1810. IF dw_2.RowCount() = 0 THEN
  1811. dw_2.InsertRow(0)
  1812. END IF
  1813. END IF
  1814. IF Not dw_mx_edit THEN Parent.TriggerEvent('ue_retrieve_dw_mx')
  1815. wf_face()
  1816. end event
  1817. type cb_undo_mx from commandbutton within w_import_mtrlname
  1818. integer x = 1312
  1819. integer y = 296
  1820. integer width = 206
  1821. integer height = 84
  1822. integer taborder = 50
  1823. boolean bringtotop = true
  1824. integer textsize = -9
  1825. integer weight = 400
  1826. fontcharset fontcharset = gb2312charset!
  1827. fontpitch fontpitch = variable!
  1828. string facename = "宋体"
  1829. string text = "放弃"
  1830. end type
  1831. event clicked;
  1832. dw_mx_edit = not dw_mx_edit
  1833. Parent.TriggerEvent('ue_retrieve_dw_mx')
  1834. wf_face()
  1835. end event
  1836. type cb_add_mx from commandbutton within w_import_mtrlname
  1837. integer x = 1527
  1838. integer y = 296
  1839. integer width = 206
  1840. integer height = 84
  1841. integer taborder = 50
  1842. boolean bringtotop = true
  1843. integer textsize = -9
  1844. integer weight = 400
  1845. fontcharset fontcharset = gb2312charset!
  1846. fontpitch fontpitch = variable!
  1847. string facename = "宋体"
  1848. string text = "增行"
  1849. end type
  1850. event clicked;dw_2.InsertRow(0)
  1851. end event
  1852. type cb_del_mx from commandbutton within w_import_mtrlname
  1853. integer x = 1742
  1854. integer y = 296
  1855. integer width = 206
  1856. integer height = 84
  1857. integer taborder = 50
  1858. boolean bringtotop = true
  1859. integer textsize = -9
  1860. integer weight = 400
  1861. fontcharset fontcharset = gb2312charset!
  1862. fontpitch fontpitch = variable!
  1863. string facename = "宋体"
  1864. string text = "删行"
  1865. end type
  1866. event clicked;Long ll_row
  1867. ll_row = dw_2.GetRow()
  1868. IF ll_row > 0 THEN
  1869. dw_2.DeleteRow(ll_row)
  1870. END IF
  1871. end event
  1872. type cb_price_edit from uo_imflatbutton within w_import_mtrlname
  1873. integer x = 1806
  1874. integer width = 494
  1875. integer height = 164
  1876. integer taborder = 40
  1877. boolean bringtotop = true
  1878. string text = "修改价格上传策略"
  1879. string normalpicname = "OPEN.bmp"
  1880. integer picsize = 16
  1881. toolbaralignment pic_align = alignattop!
  1882. boolean border = false
  1883. end type
  1884. event clicked;call super::clicked;String arg_msg
  1885. IF dw_price_edit THEN
  1886. IF dw_1.AcceptText() <> 1 THEN RETURN
  1887. IF wf_save_price(arg_msg) <> 1 THEN
  1888. MessageBox('错误', arg_msg)
  1889. RETURN
  1890. END IF
  1891. END IF
  1892. dw_price_edit = Not dw_price_edit
  1893. IF dw_price_edit THEN
  1894. cbx_1.Checked = True
  1895. wf_selectall()
  1896. ELSE
  1897. cb_reflash.TriggerEvent(Clicked!)
  1898. END IF
  1899. wf_face()
  1900. end event
  1901. type cb_price_cancel from uo_imflatbutton within w_import_mtrlname
  1902. integer x = 2299
  1903. integer width = 165
  1904. integer height = 164
  1905. integer taborder = 50
  1906. boolean bringtotop = true
  1907. boolean enabled = false
  1908. string text = "放弃"
  1909. string normalpicname = "delete.bmp"
  1910. integer picsize = 16
  1911. toolbaralignment pic_align = alignattop!
  1912. boolean border = false
  1913. end type
  1914. event clicked;call super::clicked;String ls_msg
  1915. IF dw_price_edit THEN
  1916. dw_price_edit = Not dw_price_edit
  1917. cb_reflash.TriggerEvent(Clicked!)
  1918. wf_face()
  1919. END IF
  1920. end event
  1921. type cb_requestquote from uo_imflatbutton within w_import_mtrlname
  1922. integer x = 2464
  1923. integer width = 274
  1924. integer height = 164
  1925. integer taborder = 50
  1926. boolean bringtotop = true
  1927. string text = "请求报价"
  1928. string normalpicname = "update.BMP"
  1929. integer picsize = 16
  1930. toolbaralignment pic_align = alignattop!
  1931. boolean border = false
  1932. end type
  1933. event clicked;call super::clicked;Long i
  1934. s_eb_aifmb_requestquote_parm s_tran
  1935. Long j = 0
  1936. FOR i = 1 To dw_1.RowCount()
  1937. IF dw_1.Object.ch[i] <> 1 THEN CONTINUE
  1938. IF dw_1.Object.im_type[i] <> 1 THEN CONTINUE
  1939. j++
  1940. s_tran.im_type[j] = dw_1.Object.im_type[i]
  1941. s_tran.im_id[j] = dw_1.Object.im_id[i]
  1942. s_tran.mtrlcode[j] = dw_1.Object.mtrlcode[i]
  1943. s_tran.mtrlname[j] = dw_1.Object.mtrlname[i]
  1944. s_tran.numiid[j] = dw_1.Object.numiid[i]
  1945. NEXT
  1946. IF j <= 0 THEN RETURN
  1947. OpenWithParm(w_eb_aifmb_requestquote, s_tran)
  1948. Long rslt
  1949. rslt = Message.DoubleParm
  1950. IF rslt = 1 THEN
  1951. cb_reflash.TriggerEvent(Clicked!)
  1952. END IF
  1953. end event
  1954. type cb_getanswer from uo_imflatbutton within w_import_mtrlname
  1955. integer x = 2743
  1956. integer width = 274
  1957. integer height = 164
  1958. integer taborder = 60
  1959. boolean bringtotop = true
  1960. string text = "获取回复"
  1961. string normalpicname = "update2.BMP"
  1962. integer picsize = 16
  1963. toolbaralignment pic_align = alignattop!
  1964. boolean border = false
  1965. end type
  1966. event clicked;call super::clicked;Int rslt = 1
  1967. String arg_msg
  1968. uo_aifmb = Create uo_aifmb
  1969. s_aifmb_getrequestquoteanswerdata s_data[]
  1970. IF uo_aifmb.uf_getrequestquoteanswer(s_data, arg_msg) <> 1 THEN
  1971. rslt = 0
  1972. GOTO ext
  1973. END IF
  1974. Long i
  1975. Long ll_AcceptFlag
  1976. String ls_numiid
  1977. FOR i = 1 To UpperBound(s_data)
  1978. IF s_data[i].AcceptFlag THEN
  1979. ll_AcceptFlag = 1
  1980. ELSE
  1981. ll_AcceptFlag = 0
  1982. END IF
  1983. ls_numiid = String(s_data[i].ProductID)
  1984. UPDATE eb_import_mtrlname SET acceptflag = :ll_AcceptFlag,
  1985. rejectreason = :s_data[i].rejectreason
  1986. Where im_type = 1 And numiid = :ls_numiid;
  1987. IF sqlca.SQLCode <> 0 THEN
  1988. rslt = 0
  1989. arg_msg = '更新拒绝原因失败,' + sqlca.SQLErrText
  1990. GOTO ext
  1991. END IF
  1992. NEXT
  1993. ext:
  1994. Destroy uo_aifmb
  1995. IF rslt = 1 THEN
  1996. COMMIT;
  1997. cb_reflash.TriggerEvent(Clicked!)
  1998. MessageBox('OK', '更新成功')
  1999. ELSE
  2000. ROLLBACK;
  2001. MessageBox('ERROR', arg_msg)
  2002. END IF
  2003. end event
  2004. type ln_bar from line within w_import_mtrlname
  2005. long linecolor = 268435456
  2006. integer linethickness = 4
  2007. integer beginy = 280
  2008. integer endx = 2007
  2009. integer endy = 280
  2010. end type
  2011. type ln_bar2 from line within w_import_mtrlname
  2012. long linecolor = 16777215
  2013. integer linethickness = 4
  2014. integer beginy = 284
  2015. integer endx = 2039
  2016. integer endy = 284
  2017. end type
  2018. type r_bar from rectangle within w_import_mtrlname
  2019. long linecolor = 16777215
  2020. integer linethickness = 4
  2021. long fillcolor = 1073741824
  2022. integer x = 1422
  2023. integer width = 146
  2024. integer height = 68
  2025. end type
  2026. event constructor;this.fillcolor = 14215660
  2027. this.linecolor = 14215660
  2028. this.x = -1
  2029. this.y = -1
  2030. this.height = ln_bar.beginy - 5
  2031. end event
  2032. type ln_1 from line within w_import_mtrlname
  2033. long linecolor = 268435456
  2034. integer linethickness = 4
  2035. integer beginy = 168
  2036. integer endx = 2007
  2037. integer endy = 168
  2038. end type
  2039. type ln_2 from line within w_import_mtrlname
  2040. long linecolor = 16777215
  2041. integer linethickness = 4
  2042. integer beginy = 172
  2043. integer endx = 2039
  2044. integer endy = 172
  2045. end type