12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519 |
- $PBExportHeader$w_buytask.srw
- forward
- global type w_buytask from w_publ_1ton_share_detail
- end type
- type ddlb_scid from uo_ddlb_scid within w_buytask
- end type
- type st_2 from statictext within w_buytask
- end type
- type st_3 from statictext within w_buytask
- end type
- type ddlb_status from uo_ddlb_status within w_buytask
- end type
- type cbx_enamt_edit from checkbox within w_buytask
- end type
- type cbx_enamt_notax_edit from checkbox within w_buytask
- end type
- end forward
- global type w_buytask from w_publ_1ton_share_detail
- integer width = 4261
- integer height = 2428
- string title = "采购订单"
- boolean maxbox = true
- windowstate windowstate = maximized!
- long ls_powerid = 23779088
- boolean if_chkmtrlinfo = true
- event insert_childrow ( )
- event ue_copy ( )
- event ue_paste ( )
- event ue_stopmx ( )
- event ue_cstopmx ( )
- event ue_tempstoptask ( )
- event ue_ctempstoptask ( )
- event ue_cstopsaletask ( )
- event ue_finishtask ( )
- event ue_cfinishtask ( )
- event ue_fj_edit ( )
- event ue_fj_view ( )
- event ue_cpml_qty ( )
- event ue_cmpl_status_qty ( )
- event ue_p_cmpl_qty ( )
- event ue_cmpl_qty ( )
- event ue_p_formula_set ( )
- event ue_p_requiredate_set ( )
- event ue_p_uprice_set ( )
- event ue_sendemail ( )
- event ue_send_ljfieb ( )
- event ue_ch_banktype ( )
- event ue_ch_money ( )
- event ue_buytask_jd_ljfieb ( )
- event ue_add_dscrp ( )
- event ue_p_tax ( )
- event ue_show_price_remind ( )
- event ue_fj_mx_add ( )
- event ue_fj_view_mx ( )
- event ue_fj_mx_add_p ( )
- event ue_fj_edit_mx ( )
- event ue_stopsaletask ( )
- event ue_create_inware_buy ( )
- event ue_create_taskdamt ( )
- event retrieve_fjnum ( )
- event ue_cmpl_tax ( )
- event ue_buytask_mod ( )
- event ue_p_cmpl_price ( )
- event ue_cmpl_price ( )
- event ue_his ( )
- event ue_p_formula2_set ( )
- event ue_view_mxdscrp ( )
- event ue_view_mxdscrp3 ( )
- event ue_view_mxdscrp4 ( )
- event ue_view_mxdscrp2 ( )
- event ue_get_maxprice ( )
- event ue_priceaudit ( )
- event ue_cpriceaudit ( )
- ddlb_scid ddlb_scid
- st_2 st_2
- st_3 st_3
- ddlb_status ddlb_status
- cbx_enamt_edit cbx_enamt_edit
- cbx_enamt_notax_edit cbx_enamt_notax_edit
- end type
- global w_buytask w_buytask
- type variables
- int cur_status=0 //当前查询订单状态// -1 所有
- int cur_flag= -1
- long cur_scid
- datastore ds_copy
- uo_buytask obj_task
- uo_spt_price uo_sptprice
- uo_ljfieb uo_fieb
- uov_price up
- int ii_enamt_edit = 0//0:不使用录入,不能编辑; 1:使用录入,可以编辑
- long ii_enamt_notax_edit=0 //录入不含税单价
- end variables
- forward prototypes
- public function integer wf_statusbtn_fc ()
- public subroutine wf_autoaddmx (long arg_mtrlid[], decimal arg_qty[])
- public function integer wf_refresh_curuc (long arg_scid, long arg_taskid)
- public function integer wf_copy (ref string arg_msg)
- public function integer wf_paste (ref string arg_msg)
- public subroutine wf_check_billfj ()
- public function integer wf_xls_retrievedata (long arg_ationid, ref s_xls_billlist arg_str_billlist, ref uo_sendtoexcel arg_obj_st, ref string arg_msg)
- public function integer wf_print_retrievedata (ref s_print_pic_list arg_s_pic, ref string arg_msg)
- public subroutine wf_change_sptid (long arg_sptid)
- public function integer wf_get_price (long arg_row)
- public function integer wf_get_sptmtrlname (long arg_row)
- public function integer wf_autoaddmx_sale (s_saletask_ch s_saletask)
- public subroutine wf_cmpl_amt (long row)
- public function integer wf_autoaddmx_will_rq (s_buytaskmx_arr s_buy)
- public subroutine wf_enamt_facechg ()
- public function integer wf_check_qtyandaddqty (ref string arg_msg)
- end prototypes
- event insert_childrow();long li_row
- li_row=dw_child.insertrow(0)
- dw_child.scrolltorow(li_row)
- dw_child.object.u_buytaskmx_iforder[li_row] = sys_option_autoyes
- if li_row > 1 then
- dw_child.accepttext()
- dw_child.object.u_buytaskmx_storageid[li_row] = dw_child.object.u_buytaskmx_storageid[1]
- end if
- dw_child.SetColumn ('u_buytaskmx_iforder')
- end event
- event ue_copy();string arg_msg=''
- if wf_copy(arg_msg) = 1 then
- messagebox('提示','复制成功', Information!, OK! )
- else
- messagebox('提示',arg_msg, Information!, OK! )
- end if
- end event
- event ue_paste();string arg_msg=''
- if wf_paste(arg_msg) = 1 then
-
- else
- messagebox('提示',arg_msg, Information!, OK! )
- end if
- end event
- event ue_stopmx();IF dw_edit_mode THEN
- MessageBox('提示',"编辑状态下不可以使用!", Information!, OK! )
- RETURN
- END IF
- IF NOT f_power_ind(686) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- String arg_msg = ''
- Long childrow,uc_row
- uc_row = dw_pageretr.GetRow()
- IF uc_row <= 0 THEN
- MessageBox('提示','请选定当前目标订单!', Information!, OK! )
- RETURN
- END IF
- childrow = dw_child.GetRow()
- IF childrow <= 0 THEN
- MessageBox('提示','请选定当前明细物料!', Information!, OK! )
- RETURN
- END IF
- IF MessageBox ("询问","是否确定要中止当前明细吗?",Question!,YesNo! ) = 2 THEN RETURN
- s_stopmx s_stop
- s_inputbox S_SREU
- S_SREU.Title = '请输入原因'
- S_SREU.OLD_TEXT = ''
- OpenWithParm(w_inputbox_stop,S_SREU)
- s_stop = Message.PowerObjectParm
- IF Trim(s_stop.stopreason) = '' OR IsNull(s_stop.stopreason) THEN
- MessageBox('提示','请输入中止原因!', Information!, OK! )
- RETURN
- END IF
- Long ll_scid,ll_taskid,ll_printid
- String ls_mtrlcode
- ll_scid = dw_pageretr.Object.u_buytask_scid[uc_row]
- ll_taskid = dw_pageretr.Object.taskid[uc_row]
- ll_printid = dw_child.Object.u_buytaskmx_printid[childrow]
- ls_mtrlcode = dw_child.Object.u_mtrldef_mtrlcode[childrow]
- IF obj_task.stopmx(ll_scid,ll_taskid,ll_printid,ls_mtrlcode,1,s_stop.stopreason,s_stop.stopqty,arg_msg,TRUE) = 0 THEN
- MessageBox('Error!',arg_msg)
- ELSE
- //日志
- Long ls_id
- String ls_code
- ls_id = dw_pageretr.Object.taskid[uc_row]
- ls_code = dw_pageretr.Object.taskCODE[uc_row]
- f_setsysoplog('采购订单','采购订单明细中止,id:'+String(ls_id)+',单号:'+ls_code+',物料:'+ls_mtrlcode,arg_msg,TRUE)
- //--
-
- MessageBox('提示','中止单据明细'+ls_mtrlcode+'成功!', Information!, OK! )
-
- THIS.TriggerEvent("retrieve_childdw")
-
- IF obj_task.trycmplbuytask(ll_scid,ll_taskid,arg_msg,TRUE) = 0 THEN
- MessageBox('Error!',arg_msg)
- ELSE
- wf_refresh_curuc(ll_scid,ll_taskid)
- END IF
- END IF
- end event
- event ue_cstopmx();IF Not f_power_ind(686) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- IF dw_edit_mode THEN RETURN
- IF Not KeyDown(KeyControl!) THEN
- IF MessageBox ("询问","是否确定要取消中止当前明细吗?",Question!,YesNo! ) = 2 THEN RETURN
- END IF
- String arg_msg = ''
- Long childrow,uc_row
- uc_row = dw_pageretr.GetRow()
- IF uc_row <= 0 THEN
- MessageBox('提示','请选定当前目标订单!', Information!, OK! )
- RETURN
- END IF
- childrow = dw_child.GetRow()
- IF childrow <= 0 THEN
- MessageBox('提示','请选定当前明细物料!', Information!, OK! )
- RETURN
- END IF
- Long ll_scid,ll_taskid,ll_printid
- String ls_mtrlcode
- ll_scid = dw_pageretr.Object.u_buytask_scid[uc_row]
- ll_taskid = dw_pageretr.Object.taskid[uc_row]
- ll_printid = dw_child.Object.u_buytaskmx_printid[childrow]
- ls_mtrlcode = dw_child.Object.u_mtrldef_mtrlcode[childrow]
- IF obj_task.stopmx(ll_scid,ll_taskid,ll_printid,ls_mtrlcode,0,'',0,arg_msg,True) = 0 THEN
- MessageBox('Error!',arg_msg)
- ELSE
- //日志
- Long ls_id
- String ls_code
- ls_id = dw_pageretr.Object.taskid[uc_row]
- ls_code = dw_pageretr.Object.taskCODE[uc_row]
- f_setsysoplog('采购订单','采购订单明细取消中止,id:'+String(ls_id)+',单号:'+ls_code+',物料:'+ls_mtrlcode,arg_msg,True)
- //--
-
- MessageBox('提示','取消中止单据明细'+ls_mtrlcode+'成功!', Information!, OK! )
-
- This.TriggerEvent("retrieve_childdw")
- END IF
- end event
- event ue_tempstoptask();IF dw_edit_mode THEN
- MessageBox('提示',"编辑状态下不可以使用!", Information!, OK! )
- return
- END IF
- if not f_power_ind(97) then
- messagebox(publ_operator,sys_msg_pow, Information!, OK! )
- return
- end if
- string arg_msg=''
- long pagerert_row
- pagerert_row=dw_uc.getrow()
- if pagerert_row<=0 then
- messagebox('提示','请选定当前目标订单!', Information!, OK! )
- return
- end if
- IF MessageBox ("询问","是否确定要对当前订单作暂停操作吗?",Question!,YesNo! ) = 2 THEN RETURN
- if obj_task.tempstoptask(dw_uc.object.u_buytask_scid[pagerert_row],dw_uc.object.taskid[pagerert_row],arg_msg,true)=0 then
- messagebox('Error!',arg_msg)
- ELSE
- messagebox('提示',"订单作暂停操作成功!", Information!, OK! )
- if cur_status <> -1 then
- dw_uc.deleterow(pagerert_row)
- else
- wf_refresh_curuc(dw_uc.object.u_buytask_scid[pagerert_row],dw_uc.object.taskid[pagerert_row])
- end if
- end if
- end event
- event ue_ctempstoptask();if not f_power_ind(97) then
- messagebox('提示',sys_msg_pow, Information!, OK! )
- return
- end if
- if dw_edit_mode then return
- string arg_msg=''
- long pagerert_row
- pagerert_row=dw_pageretr.getrow()
- if pagerert_row<=0 then
- messagebox('提示','请选定当前目标订单!', Information!, OK! )
- return
- end if
- IF MessageBox ("询问","是否确定要对当前订单作取消暂停操作吗?",Question!,YesNo! ) = 2 THEN RETURN
- if obj_task.tempstoptask(dw_pageretr.object.u_buytask_scid[pagerert_row],dw_pageretr.object.taskid[pagerert_row],arg_msg,true)=0 then
- messagebox('Error!',arg_msg)
- ELSE
- messagebox('提示',"订单作取消暂停操作成功!", Information!, OK! )
- if cur_status <> -1 then
- dw_pageretr.deleterow(pagerert_row)
- else
- wf_refresh_curuc(dw_pageretr.object.u_buytask_scid[pagerert_row],dw_pageretr.object.taskid[pagerert_row])
- end if
- end if
- end event
- event ue_cstopsaletask();IF dw_edit_mode THEN
- MessageBox('提示',"编辑状态下不可以使用!", Information!, OK! )
- RETURN
- END IF
- IF NOT f_power_ind(98) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- String arg_msg = ''
- Long pagerert_row
- pagerert_row = dw_pageretr.GetRow()
- IF pagerert_row <= 0 THEN
- MessageBox('提示','请选定当前目标订单!', Information!, OK! )
- RETURN
- END IF
- IF MessageBox ("询问","是否确定要对当前订单作取消终止吗?",Question!,YesNo! ) = 2 THEN RETURN
- IF obj_task.cstopbuytask(dw_pageretr.Object.u_buytask_scid[pagerert_row],dw_pageretr.Object.taskid[pagerert_row],arg_msg,TRUE) = 0 THEN
- MessageBox('Error!',arg_msg)
- ELSE
- MessageBox('提示','订单取消终止操作成功!', Information!, OK! )
- // String ls_taskcode
- // ls_taskcode = dw_pageretr.Object.taskcode[dw_pageretr.GetRow()]
- // IF f_billevent_trigger (401, 6, ls_taskcode, arg_msg) = 0 THEN
- // MessageBox('Error',arg_msg)
- // END IF
- IF cur_status <> -1 THEN
- dw_pageretr.DeleteRow(pagerert_row)
- ELSE
- wf_refresh_curuc(dw_pageretr.Object.u_buytask_scid[pagerert_row],dw_pageretr.Object.taskid[pagerert_row])
- END IF
- END IF
- end event
- event ue_finishtask();IF dw_edit_mode THEN
- MessageBox('提示',"编辑状态下不可以使用!", Information!, OK! )
- RETURN
- END IF
- IF Not f_power_ind(98) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- String arg_msg = ''
- Long pagerert_row
- pagerert_row = dw_pageretr.GetRow()
- IF pagerert_row <= 0 THEN
- MessageBox('提示','请选定当前目标采购订单!', Information!, OK! )
- RETURN
- END IF
- IF MessageBox ("询问","是否确定要对当前采购订单作完成吗? (完成后采购订单将归档只读)",Question!,YesNo! ) = 2 THEN RETURN
- Long ls_taskid
- Int ls_status,ls_finishflag
- ls_taskid = dw_pageretr.Object.taskid[pagerert_row]
- ls_status = dw_pageretr.Object.u_buytask_status[pagerert_row]
- IF ls_status = 6 THEN
- ls_finishflag = 1
- ELSE
- ls_finishflag = 6
- END IF
- IF obj_task.finishtask(ls_finishflag,dw_pageretr.Object.u_buytask_scid[pagerert_row],ls_taskid,arg_msg,True) = 0 THEN
- MessageBox('Error!',arg_msg)
- ELSE
- MessageBox('提示','采购订单完成操作成功!', Information!, OK! )
- String ls_taskcode
- ls_taskcode = dw_pageretr.Object.taskcode[dw_pageretr.GetRow()]
- IF f_billevent_trigger (401, 5, ls_taskcode, arg_msg) = 0 THEN
- MessageBox('Error',arg_msg)
- END IF
- IF cur_status <> -1 THEN
- dw_pageretr.DeleteRow(pagerert_row)
- ELSE
- wf_refresh_curuc(dw_pageretr.Object.u_buytask_scid[pagerert_row],dw_pageretr.Object.taskid[pagerert_row])
- END IF
- END IF
- end event
- event ue_cfinishtask();IF dw_edit_mode THEN
- MessageBox('提示',"编辑状态下不可以使用!", Information!, OK! )
- return
- END IF
- IF NOT f_power_ind(98) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- String arg_msg = ''
- Long pagerert_row
- pagerert_row = dw_pageretr.GetRow()
- IF pagerert_row <= 0 THEN
- MessageBox('提示','请选定当前目标采购订单!', Information!, OK! )
- RETURN
- END IF
- IF MessageBox ("询问","是否确定要对当前采购订单作完成吗? (完成后采购订单将归档只读)",Question!,YesNo! ) = 2 THEN RETURN
- Long ls_taskid
- Int ls_status,ls_finishflag
- ls_taskid = dw_pageretr.Object.taskid[pagerert_row]
- ls_status = dw_pageretr.Object.u_buytask_status[pagerert_row]
- IF ls_status = 6 THEN
- ls_finishflag = 1
- ELSE
- ls_finishflag = 6
- END IF
- IF obj_task.finishtask(ls_finishflag,dw_pageretr.Object.u_buytask_scid[pagerert_row],ls_taskid,arg_msg,TRUE) = 0 THEN
- MessageBox('Error!',arg_msg)
- ELSE
- MessageBox('提示','采购订单完成操作成功!', Information!, OK! )
- IF cur_status <> -1 THEN
- dw_pageretr.DeleteRow(pagerert_row)
- ELSE
- wf_refresh_curuc(dw_pageretr.Object.u_buytask_scid[pagerert_row],dw_pageretr.Object.taskid[pagerert_row])
- END IF
- END IF
- end event
- event ue_fj_edit();IF dw_edit_mode THEN
- MessageBox('提示','编辑状态下不可用', Information!, OK! )
- RETURN
- END IF
- //IF NOT f_power_ind(1446) THEN
- // MessageBox(publ_operator,sys_msg_pow)
- // RETURN
- //END IF
- s_edit_index_tran s_pic
- Long ll_ConnectionID
- String arg_msg
- Long ls_row
- ls_row = dw_pageretr.GetRow()
- IF ls_row <= 0 THEN
- RETURN
- END IF
- IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
- MessageBox('提示','没有指定附件数据库连接'+arg_msg, Information!, OK! )
- RETURN
- END IF
- s_pic.f_long = 401 //采购订单的mainID
- s_pic.f_string = dw_pageretr.Object.taskcode[ls_row]
- s_pic.g_long = dw_pageretr.Object.taskid[ls_row]
- s_pic.e_long = dw_pageretr.Object.u_buytask_scid[ls_row]
- s_pic.sqltransaction = sys_filedb_sqlca
- OpenWithParm(w_fj_bill_mng,s_pic)
- //wf_check_billfj()
- end event
- event ue_fj_view();IF dw_edit_mode THEN
- MessageBox('提示','编辑状态下不可用', Information!, OK! )
- RETURN
- END IF
- s_edit_index_tran s_pic
- Long ll_ConnectionID
- String arg_msg
- Long ls_row
- ls_row = dw_pageretr.GetRow()
- IF ls_row <= 0 THEN
- RETURN
- END IF
- IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
- MessageBox('提示','没有指定附件数据库连接'+arg_msg, Information!, OK! )
- RETURN
- END IF
- s_pic.f_long = 401 //采购订单的mainID
- s_pic.f_string = dw_pageretr.Object.taskcode[ls_row]
- s_pic.g_long = dw_pageretr.Object.taskid[ls_row]
- s_pic.e_long = dw_pageretr.Object.u_buytask_scid[ls_row]
- s_pic.sqltransaction = sys_filedb_sqlca
- OpenWithParm(w_fj_bill_view,s_pic)
- end event
- event ue_cpml_qty();String ls_rate,ls_status,ls_qty[]
- Decimal ll_rate,ll_qty[],ld_qty = 1
- Long i,j,k
- Long ll_cmp1,ll_cmp2
- dw_child.AcceptText()
- s_changerate s_rate
- IF dw_edit_mode THEN
- Open(w_changerate_ch)
- // ls_rate = message.stringparm
- // ll_rate = dec(ls_rate)
- s_rate = Message.PowerObjectParm
- ll_rate = Dec(s_rate.rate)
- ll_cmp1 = s_rate.cmp1
- ll_cmp2 = s_rate.cmp2
-
- IF ll_rate <= 0 THEN RETURN
- IF dw_child.RowCount() <= 0 THEN RETURN
-
- FOR i = 1 TO dw_child.RowCount()
- IF ll_cmp1 = 1 THEN
- IF IsNull(dw_child.Object.u_buytaskmx_status[i]) THEN
- CONTINUE
- ELSE
- ls_status = dw_child.Object.u_buytaskmx_status[i]
- END IF
- ELSEIF ll_cmp1 = 2 THEN
- IF IsNull(dw_child.Object.u_buytaskmx_woodcode[i]) THEN
- CONTINUE
- ELSE
- ls_status = dw_child.Object.u_buytaskmx_woodcode[i]
- END IF
- ELSE
- IF IsNull(dw_child.Object.u_buytaskmx_pcode[i]) THEN
- CONTINUE
- ELSE
- ls_status = dw_child.Object.u_buytaskmx_pcode[i]
- END IF
- END IF
-
- IF ll_cmp2 = 1 THEN
- IF dw_child.Object.u_buytaskmx_addqty[i] = 0 THEN
-
- ELSE
- ls_status = ls_status + '*' + String(dw_child.Object.u_buytaskmx_addqty[i])
- END IF
- END IF
-
-
- IF IsNull(ls_status) THEN
- CONTINUE
- ELSE
- // ls_status = dw_child.object.u_buytaskmx_status[i]
- IF Pos(ls_status,'*') = 0 THEN
- CONTINUE
- ELSE
- j = 0
- DO WHILE Pos(ls_status,'*') > 0
- j++
- ls_qty[j] = Mid(ls_status,1,Pos(ls_status,'*') - 1)
- ls_status = Mid(ls_status,Pos(ls_status,'*') + 1)
- LOOP
- j++
- ls_qty[j] = ls_status
- END IF
-
- ld_qty = 1
- FOR k = 1 TO j
- ld_qty = ld_qty * Dec(ls_qty[k])
- NEXT
-
- dw_child.Object.u_buytaskmx_uqty[i] = Round(ld_qty / ll_rate,10)
- END IF
- NEXT
-
- END IF
- end event
- event ue_cmpl_status_qty();Int ll_flag
- Decimal ll_value
- Long ll_num
- Long i,j,k
- String ls_mtrlmode
- String ls_status
- Decimal ld_qty
- Decimal ld_addqty
- String ls_msg
- Long ll_type
- s_cmpl_addqty s_cmpl
- dw_child.AcceptText()
- dw_uc.SetRedraw(FALSE)
- IF dw_edit_mode THEN
- Open(w_cmpl_status_qty_ch)
- s_cmpl = Message.PowerObjectParm
- ll_flag = s_cmpl.flag
- ll_value = s_cmpl.addvalue
- ll_num = s_cmpl.num
- ll_type = s_cmpl.cmptype
- IF ll_value <= 0 THEN RETURN
- IF dw_child.RowCount() <= 0 THEN RETURN
- FOR i = 1 TO dw_child.RowCount()
- ld_addqty = dw_child.Object.u_buytaskmx_addqty[i]
- CHOOSE CASE ll_type
- CASE 0
- ls_status = dw_child.Object.u_buytaskmx_status[i]
- CASE 1
- ls_status = dw_child.Object.u_buytaskmx_woodcode[i]
- CASE 2
- ls_status = dw_child.Object.u_buytaskmx_pcode[i]
- CASE 3
- ls_status = dw_child.Object.u_mtrldef_mtrlsectype[i]
- CASE 4
- ls_status = dw_child.Object.u_mtrldef_zxmtrlmode[i]
- END CHOOSE
- IF ld_addqty = 0 OR ls_status = '' THEN
-
- ELSE
- ld_qty = 0
- IF f_cmpl_status_qty(ld_addqty,ls_status,ld_qty,ls_msg) = 0 THEN
- MessageBox('提示',ls_msg, Information!, OK! )
- GOTO ext
- END IF
-
- IF ll_flag = 0 THEN
- dw_child.Object.u_buytaskmx_uqty[i] = Round(ld_qty * ll_value,ll_num)
- ELSE
- dw_child.Object.u_buytaskmx_uqty[i] = Round(ld_qty / ll_value,ll_num)
- END IF
- END IF
- NEXT
-
- END IF
- ext:
- dw_uc.SetRedraw(TRUE)
- end event
- event ue_p_cmpl_qty();IF dw_child.RowCount() = 0 THEN RETURN
- Long i
- String ls_formula
- String ls_msg
- String ls_rs
- String ls_num
- Decimal ld_addqty
- Decimal ld_price
- Decimal ld_rebate
- Decimal ld_qty
- dw_child.AcceptText()
- s_cmpl_qty s_cmpl
- Open(w_cmpl_qty_ch_son)
- s_cmpl = Message.PowerObjectParm
- IF s_cmpl.retu = 0 THEN RETURN
- dw_uc.SetRedraw(FALSE)
- FOR i = 1 TO dw_child.RowCount()
- ld_qty = 0
- IF dw_child.Object.u_buytaskmx_formula[i] <> '' THEN
-
- s_cmpl.formula = dw_child.Object.u_buytaskmx_formula[i]
- s_cmpl.addqty = dw_child.Object.u_buytaskmx_addqty[i]
- s_cmpl.price = dw_child.Object.u_buytaskmx_uprice[i]
- s_cmpl.rebate = dw_child.Object.u_buytaskmx_rebate[i]
-
- s_cmpl.status = dw_child.Object.u_buytaskmx_status[i]
- s_cmpl.woodcode = dw_child.Object.u_buytaskmx_woodcode[i]
- s_cmpl.pcode = dw_child.Object.u_buytaskmx_pcode[i]
- s_cmpl.mtrlsectype = dw_child.Object.u_mtrldef_mtrlsectype[i]
- s_cmpl.zxmtrlmode = dw_child.Object.u_mtrldef_zxmtrlmode[i]
-
-
- IF f_cmpl_qty(s_cmpl,ld_qty,ls_msg) = 0 THEN
- MessageBox('提示','第' + String(i) + '行,' + ls_msg, Information!, OK! )
- GOTO ext
- END IF
- dw_child.Object.u_buytaskmx_uqty[i] = ld_qty
- END IF
- NEXT
- ext:
- dw_child.SetColumn('u_buytaskmx_uqty')
- dw_uc.SetRedraw(TRUE)
- end event
- event ue_cmpl_qty();
- IF not dw_edit_mode THEN RETURN
- IF dw_child.GetRow() = 0 THEN RETURN
- Long child_row
- dw_child.AcceptText()
- child_row = dw_child.GetRow()
- s_cmpl_qty s_cmpl,s_return
- s_cmpl.qty = dw_child.Object.u_buytaskmx_uqty[child_row]
- s_cmpl.formula = dw_child.Object.u_buytaskmx_formula[child_row]
- s_cmpl.addqty = dw_child.Object.u_buytaskmx_addqty[child_row]
- s_cmpl.price = dw_child.Object.u_buytaskmx_uprice[child_row]
- s_cmpl.rebate = dw_child.Object.u_buytaskmx_rebate[child_row]
- s_cmpl.status = dw_child.Object.u_buytaskmx_status[child_row]
- s_cmpl.woodcode = dw_child.Object.u_buytaskmx_woodcode[child_row]
- s_cmpl.pcode = dw_child.Object.u_buytaskmx_pcode[child_row]
- s_cmpl.mtrlsectype = dw_child.Object.u_mtrldef_mtrlsectype[child_row]
- s_cmpl.zxmtrlmode = dw_child.Object.u_mtrldef_zxmtrlmode[child_row]
-
- IF NOT IsValid(w_cmpl_qty_ch) THEN
- OpenWithParm(w_cmpl_qty_ch,s_cmpl)
- s_return = Message.PowerObjectParm
- IF s_return.formula <> s_cmpl.formula or s_return.qty <> s_cmpl.qty THEN
- dw_child.Object.u_buytaskmx_uqty[child_row] = s_return.qty
- dw_child.Object.u_buytaskmx_formula[child_row] = s_return.formula
- END IF
- END IF
- end event
- event ue_p_formula_set();IF NOT dw_edit_mode THEN RETURN
- IF MessageBox('提示','是否要确定要批设定数量公式', question!, YesNo!, 2) = 2 THEN
- RETURN
- END IF
- Long ll_i
- dw_child.AcceptText()
- dw_child.SetRedraw(FALSE)
- FOR ll_i = 1 TO dw_child.RowCount()
- IF ll_i = 1 THEN CONTINUE
- dw_child.Object.u_buytaskmx_formula[ll_i] = dw_child.Object.u_buytaskmx_formula[1]
- NEXT
- dw_child.SetRedraw(TRUE)
- end event
- event ue_p_requiredate_set();IF NOT dw_edit_mode THEN RETURN
- IF MessageBox('提示','是否要确定要批设定交货期', question!, YesNo!, 2) = 2 THEN
- RETURN
- END IF
- Long ll_i
- dw_child.AcceptText()
- dw_child.SetRedraw(FALSE)
- FOR ll_i = 2 TO dw_child.RowCount()
- //IF ll_i = 1 THEN CONTINUE
- dw_child.Object.u_buytaskmx_requiredate[ll_i] = dw_child.Object.u_buytaskmx_requiredate[1]
- NEXT
- dw_child.SetRedraw(TRUE)
- end event
- event ue_p_uprice_set();IF NOT dw_edit_mode THEN RETURN
- IF MessageBox('提示','是否要确定要批设定单价', question!, YesNo!, 2) = 2 THEN
- RETURN
- END IF
- Long ll_i
- dw_child.AcceptText()
- dw_child.SetRedraw(FALSE)
- FOR ll_i = 2 TO dw_child.RowCount()
- //IF ll_i = 1 THEN CONTINUE
- dw_child.Object.u_buytaskmx_uprice[ll_i] = dw_child.Object.u_buytaskmx_uprice[1]
- NEXT
- dw_child.SetRedraw(TRUE)
- end event
- event ue_sendemail();f_run_outlook('','','')
- end event
- event ue_send_ljfieb;IF dw_edit_mode THEN RETURN
- IF sys_email_sqlca.DBHandle() = 0 THEN
- MessageBox('Error','电子商务数据库连接失败,请检查')
- RETURN
- END IF
- IF MessageBox('询问','是否确认要发送单据给供应商?',question!,yesno!) = 2 THEN RETURN
- Long ll_scid,ll_taskid
- String ls_taskcode
- Long ll_row
- Int li_ifecomm
- String arg_summary,arg_postscript,arg_remark
- String arg_msg
- ll_row = dw_pageretr.GetRow()
- IF ll_row <= 0 THEN
- MessageBox('系统提示','请选择要发送的单据')
- RETURN
- END IF
- ll_scid = dw_pageretr.Object.u_buytask_scid[ll_row]
- ll_taskid = dw_pageretr.Object.taskid[ll_row]
- ls_taskcode = dw_pageretr.Object.taskcode[ll_row]
- SELECT u_spt.ifecomm
- INTO :li_ifecomm
- FROM u_buyTask INNER JOIN
- u_spt ON u_buyTask.sptID = u_spt.sptid
- WHERE u_buyTask.scid = :ll_scid
- And u_buyTask.taskid = :ll_taskid Using sqlca;
- IF sqlca.SQLCode <> 0 THEN
- MessageBox('Error','查询采购订单相关供应商通信信息失败,请检查设置,'+sqlca.SQLErrText)
- RETURN
- END IF
- IF li_ifecomm = 0 THEN
- MessageBox('系统提示','供应商没有使用电子商务,不能发送单据')
- RETURN
- END IF
- s_packet_ljfieb s_pack,s_return
- s_pack.summary = '发送采购订单:'+ls_taskcode
- OpenWithParm(w_dscrp_edit_ljfieb,s_pack)
-
- s_return = Message.PowerObjectParm
- IF s_return.returnflag <> 1 THEN RETURN
- arg_summary = s_return.summary
- arg_postscript = s_return.postscript
- arg_remark = s_return.remark
- IF uo_fieb.send_buytask(ll_scid,ll_taskid,arg_summary,arg_postscript,arg_remark,arg_msg,True) = 0 THEN
- MessageBox('Erorr',arg_msg)
- RETURN
- END IF
- UPDATE u_buyTask
- SET senduser = :publ_operator,
- sendtime = getdate(),
- sendcnt = sendcnt + 1
- WHERE taskid = :ll_taskid
- And scid = :ll_scid Using sqlca;
- IF sqlca.SQLCode <> 0 THEN
- ROLLBACK Using sqlca;
- MessageBox('Error','更新发送次数失败,'+sqlca.SQLErrText)
- RETURN
- ELSE
- COMMIT Using sqlca;
- END IF
- wf_refresh_curuc(ll_scid,ll_taskid)
- MessageBox('系统提示','提交成功!')
- end event
- event ue_ch_banktype();IF NOT IsValid(w_banktype_edit_ch) THEN
- s_edit_index_tran s_open //传递参数使用
- s_open.work_mode = 1
- s_open.c_long = 1
- Openwithparm(w_banktype_edit_ch, s_open)
- s_banktype s_ch
- s_ch = Message.PowerObjectParm
- IF s_ch.banktypeid > 0 THEN
- dw_uc.Object.u_buytask_banktypeid[dw_uc.GetRow()] = s_ch.banktypeid
- END IF
-
- datawindowchild childdw
- dw_uc.GetChild("u_buytask_banktypeid",childdw)
- childdw.SetTransObject (sqlca)
- childdw.Retrieve()
- END IF
- end event
- event ue_ch_money();IF NOT IsValid(w_currency_edit_ch) THEN
- Open(w_currency_edit_ch)
- s_currency s_ch
- s_ch = Message.PowerObjectParm
- IF s_ch.moneyid > 0 THEN
- dw_uc.Object.u_buytask_moneyid[dw_uc.GetRow()] = s_ch.moneyid
- dw_uc.Object.u_buytask_mrate[dw_uc.GetRow()] = s_ch.rate
- END IF
-
- datawindowchild childdw
- dw_uc.GetChild("u_buytask_moneyid",childdw)
- childdw.SetTransObject (sqlca)
- childdw.Retrieve()
- END IF
- end event
- event ue_buytask_jd_ljfieb();long ll_row
- ll_row = dw_pageretr.getrow()
- if ll_row <= 0 then return
-
- string ls_taskcode
- ls_taskcode = dw_pageretr.object.taskcode[ll_row]
- openwithparm(w_buytask_jd_index,ls_taskcode)
- end event
- event ue_add_dscrp();s_view_dscrp s_view,s_return
- String ls_dscrp
- dw_uc.AcceptText()
- ls_dscrp = dw_uc.Object.dscrp[dw_uc.GetRow()]
- s_view.Title = '采购订单备注'
- s_view.dscrp = ls_dscrp
- s_view.editmode = dw_edit_mode
- OpenWithParm(w_view_dscrp,s_view)
- IF dw_edit_mode THEN
- s_return = Message.PowerObjectParm
- dw_uc.Object.dscrp[dw_uc.GetRow()] = s_return.dscrp
- END IF
- end event
- event ue_p_tax();IF NOT dw_edit_mode THEN RETURN
- IF MessageBox('提示','是否要确定要批设定税率', question!, YesNo!, 2) = 2 THEN
- RETURN
- END IF
- Long ll_i
- dw_child.AcceptText()
- dw_child.SetRedraw(FALSE)
- FOR ll_i = 2 TO dw_child.RowCount()
- //IF ll_i = 1 THEN CONTINUE
- dw_child.Object.u_buytaskmx_tax[ll_i] = dw_child.Object.u_buytaskmx_tax[1]
- NEXT
- dw_child.SetRedraw(TRUE)
- end event
- event ue_show_price_remind();Long ll_row, ll_x, ll_y
- ll_row = dw_child.GetRow()
- if ll_row <= 0 then return
- Long ll_mtrlid
- decimal lde_price
- ll_mtrlid = dw_child.Object.mtrlid[ll_row]
- lde_price = dw_child.Object.u_buytaskmx_uprice[ll_row]
- ll_x = this.PointerX ( ) //+ this.pointerx()
- if ll_x + 1760 > this.width then
- ll_x = this.width - 1760
- end if
- ll_y = this.PointerY ( ) //+ this.pointery()
- if ll_y + 352 > this.height then
- ll_x = this.height - 352
- end if
- this.OpenUserObject(up, ll_x, ll_y)
- up.BringToTop = True
- up.SetMtrlid(ll_mtrlid)
- up.SetPrice(lde_price)
- up.parentwin = this
- up.TriggerEvent( 'ue_retrieve')
- end event
- event ue_fj_mx_add();IF dw_edit_mode THEN
- MessageBox('提示','编辑状态下不可用')
- RETURN
- END IF
- //IF NOT f_power_ind(1446,sys_msg_pow) THEN
- // MessageBox(publ_operator,sys_msg_pow)
- // RETURN
- //END IF
- s_edit_index_tran s_pic
- Long ll_ConnectionID
- String arg_msg
- Long ls_row
- ls_row = dw_pageretr.GetRow()
- IF ls_row <= 0 THEN
- RETURN
- END IF
- IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
- MessageBox('提示','没有指定附件数据库连接'+arg_msg)
- RETURN
- END IF
- s_pic.g_long = dw_pageretr.Object.taskid[ls_row]
- s_pic.e_long = dw_pageretr.Object.u_buytask_scid[ls_row]
- s_pic.f_string = dw_pageretr.Object.taskcode[ls_row]
- s_pic.sqltransaction = sys_filedb_sqlca
- OpenWithParm(w_buytaskmx_fileadd,s_pic)
- end event
- event ue_fj_view_mx();IF dw_edit_mode THEN
- MessageBox('提示','编辑状态下不可用')
- RETURN
- END IF
- s_edit_index_tran s_pic
- Long ll_ConnectionID
- String arg_msg
- Long ls_row,ll_mxrow
- ls_row = dw_pageretr.GetRow()
- IF ls_row <= 0 THEN
- RETURN
- END IF
- ll_mxrow = dw_child.GetRow()
- IF ll_mxrow <= 0 THEN
- RETURN
- END IF
- IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
- MessageBox('提示','没有指定附件数据库连接'+arg_msg)
- RETURN
- END IF
- s_pic.f_long = 9401 //采购订单明细
- s_pic.f_string = dw_pageretr.Object.taskcode[ls_row]
- s_pic.g_long = dw_pageretr.Object.taskid[ls_row]
- s_pic.e_long = dw_pageretr.Object.u_buytask_scid[ls_row]
- s_pic.d_long = dw_child.Object.u_buytaskmx_printid[ll_mxrow]
- s_pic.sqltransaction = sys_filedb_sqlca
- OpenWithParm(w_fj_bill_view,s_pic)
- end event
- event ue_fj_mx_add_p();IF dw_edit_mode THEN
- MessageBox('提示','编辑状态下不可用')
- RETURN
- END IF
- //IF NOT f_power_ind(1446,sys_msg_pow) THEN
- // MessageBox(publ_operator,sys_msg_pow)
- // RETURN
- //END IF
- s_edit_index_tran s_pic
- Long ll_ConnectionID
- String arg_msg
- Long ls_row
- ls_row = dw_pageretr.GetRow()
- IF ls_row <= 0 THEN
- RETURN
- END IF
- IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
- MessageBox('提示','没有指定附件数据库连接'+arg_msg)
- RETURN
- END IF
- s_pic.g_long = dw_pageretr.Object.taskid[ls_row]
- s_pic.e_long = dw_pageretr.Object.u_buytask_scid[ls_row]
- s_pic.f_string = dw_pageretr.Object.taskcode[ls_row]
- s_pic.sqltransaction = sys_filedb_sqlca
- OpenWithParm(w_buytaskmx_fileadd_p,s_pic)
- end event
- event ue_fj_edit_mx();IF dw_edit_mode THEN
- MessageBox('提示','编辑状态下不可用')
- RETURN
- END IF
- //IF NOT f_power_ind(1446,sys_msg_pow) THEN
- // MessageBox(publ_operator,sys_msg_pow)
- // RETURN
- //END IF
- s_edit_index_tran s_pic
- Long ll_ConnectionID
- String arg_msg
- Long ls_row,ll_mxrow
- ls_row = dw_pageretr.GetRow()
- IF ls_row <= 0 THEN
- RETURN
- END IF
- ll_mxrow = dw_child.GetRow()
- IF ll_mxrow <= 0 THEN
- RETURN
- END IF
- IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
- MessageBox('提示','没有指定附件数据库连接'+arg_msg)
- RETURN
- END IF
- s_pic.f_long = 9401 //采购订单明细
- s_pic.f_string = dw_pageretr.Object.taskcode[ls_row]
- s_pic.g_long = dw_pageretr.Object.taskid[ls_row]
- s_pic.e_long = dw_pageretr.Object.u_buytask_scid[ls_row]
- s_pic.d_long = dw_child.Object.u_buytaskmx_printid[ll_mxrow]
- s_pic.sqltransaction = sys_filedb_sqlca
- OpenWithParm(w_fj_bill_mng,s_pic)
- end event
- event ue_stopsaletask();IF dw_edit_mode THEN
- MessageBox('提示',"编辑状态下不可以使用!", Information!, OK! )
- RETURN
- END IF
- IF NOT f_power_ind(98) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- String arg_msg = ''
- Long pagerert_row
- pagerert_row = dw_pageretr.GetRow()
- IF pagerert_row <= 0 THEN
- MessageBox('提示','请选定当前目标订单!', Information!, OK! )
- RETURN
- END IF
- IF MessageBox ("询问","是否确定要对当前订单作终止吗? (终止后订单将归档只读)",Question!,YesNo! ) = 2 THEN RETURN
- IF obj_task.stopbuytask(dw_pageretr.Object.u_buytask_scid[pagerert_row],dw_pageretr.Object.taskid[pagerert_row],arg_msg,TRUE) = 0 THEN
- MessageBox('Error!',arg_msg)
- ELSE
- MessageBox('提示','订单终止操作成功!', Information!, OK! )
- String ls_taskcode
- ls_taskcode = dw_pageretr.Object.taskcode[dw_pageretr.GetRow()]
- IF f_billevent_trigger (401, 6, ls_taskcode, arg_msg) = 0 THEN
- MessageBox('Error',arg_msg)
- END IF
- IF cur_status <> -1 THEN
- dw_pageretr.DeleteRow(pagerert_row)
- ELSE
- wf_refresh_curuc(dw_pageretr.Object.u_buytask_scid[pagerert_row],dw_pageretr.Object.taskid[pagerert_row])
- END IF
- END IF
- end event
- event ue_create_inware_buy();IF Not (f_power_ind(99) Or f_power_ind(372)) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- Long ll_storageid,ll_sptid,ll_banktypeid,ll_moneyid,ll_billtype
- Decimal dec_mrate
- String ls_sptcode,ls_sptname,ls_taskcode
- Long ll_scid,ll_row
- IF sys_option_hide_ware = 0 THEN
- Open(w_order_ml_storage)
- ll_storageid = Message.DoubleParm
- IF ll_storageid = 0 THEN RETURN
- ELSE
- ll_storageid = 11
- END IF
- dw_pageretr.AcceptText()
- ll_row = dw_pageretr.GetRow()
- ll_scid = dw_pageretr.Object.u_buytask_scid[ll_row]
- ll_sptid = Long(dw_pageretr.Object.sptid[ll_row])
- ls_sptcode = String(dw_pageretr.Object.sptcode[ll_row])
- ls_sptname = String(dw_pageretr.Object.u_spt_name[ll_row])
- ll_banktypeid = Long(dw_pageretr.Object.u_buytask_banktypeid[ll_row])
- ll_moneyid = Long(dw_pageretr.Object.u_buytask_moneyid[ll_row])
- dec_mrate = Dec(dw_pageretr.Object.u_buytask_mrate[ll_row])
- ls_taskcode = dw_pageretr.Object.taskcode[ll_row]
- ll_billtype = dw_pageretr.Object.u_buytask_billtype[ll_row]
- IF ll_row <= 0 THEN
- MessageBox('系统提示','请选定当前目标订单!',Information!,OK!)
- RETURN
- END IF
- IF Not (dw_pageretr.Object.u_buytask_status[ll_row] = 1 ) THEN
- MessageBox('系统提示','当前选定订单非在进行状态!',Information!,OK!)
- RETURN
- END IF
- s_edit_index_tran s_open
- Long uc_row_inwarebuy
- IF Not IsValid(w_inware_buy) THEN
- OpenWithParm(w_inware_buy,s_open)
- w_inware_buy.ddlb_scid.uf_selectsc(ll_scid)
- w_inware_buy.cb_add.TriggerEvent(Clicked!)
- uc_row_inwarebuy = w_inware_buy.dw_uc.GetRow()
-
- w_inware_buy.dw_uc.Object.storageid[uc_row_inwarebuy] = ll_storageid
-
- w_inware_buy.dw_uc.Object.sptid[uc_row_inwarebuy] = ll_sptid
- w_inware_buy.dw_uc.Object.u_spt_sptcode[uc_row_inwarebuy] = ls_sptcode
- w_inware_buy.dw_uc.Object.u_spt_name[uc_row_inwarebuy] = ls_sptname
- w_inware_buy.dw_uc.Object.u_inware_relint_3[uc_row_inwarebuy] = ll_moneyid
- w_inware_buy.dw_uc.Object.u_inware_mrate[uc_row_inwarebuy] = dec_mrate
- w_inware_buy.dw_uc.Object.u_inware_relint_1[uc_row_inwarebuy] = ll_banktypeid
- w_inware_buy.dw_uc.Object.inrep[uc_row_inwarebuy] = publ_operator
-
-
-
- s_mtrldef_buytask_array INS_RT_STRU
- Long ls_i,chC
-
- FOR ls_i = 1 To dw_child.RowCount()
-
- chC++
- INS_RT_STRU.mtrlid[chC] = dw_child.Object.mtrlid[ls_i]
- INS_RT_STRU.mtrlname[chC] = dw_child.Object.mtrlname[ls_i]
- INS_RT_STRU.mtrlcode[chC] = dw_child.Object.u_mtrldef_mtrlcode[ls_i]
- INS_RT_STRU.mtrlmode[chC] = dw_child.Object.u_mtrldef_mtrlmode[ls_i]
- INS_RT_STRU.unit[chC] = dw_child.Object.u_mtrldef_unit[ls_i]
- INS_RT_STRU.mxunit[chC] = dw_child.Object.u_buytaskmx_unit[ls_i]
- INS_RT_STRU.planprice[chC] = 0 // dw_child.Object.u_mtrldef_planprice[ls_i]
- INS_RT_STRU.qty[chC] = dw_child.Object.u_buytaskmx_uqty[ls_i] - dw_child.Object.u_buytaskmx_stopqty[ls_i] - dw_child.Object.u_buytaskmx_consignedqty[ls_i]
- INS_RT_STRU.fprice[chC] = dw_child.Object.u_buytaskmx_fprice[ls_i]
- INS_RT_STRU.rebate[chC] = dw_child.Object.u_buytaskmx_rebate[ls_i]
- INS_RT_STRU.uqty[chC] = dw_child.Object.u_buytaskmx_uqty[ls_i] - dw_child.Object.u_buytaskmx_stopqty[ls_i] - dw_child.Object.u_buytaskmx_consignedqty[ls_i]
- INS_RT_STRU.addqty[chC] = dw_child.Object.u_buytaskmx_addqty[ls_i] - dw_child.Object.u_buytaskmx_consignedaddqty[ls_i]
- INS_RT_STRU.uprice[chC] = dw_child.Object.u_buytaskmx_uprice[ls_i]
- INS_RT_STRU.rate[chC] = dw_child.Object.u_buytaskmx_rate[ls_i]
- INS_RT_STRU.buytaskid[chC] = dw_child.Object.u_buytaskmx_taskid [ls_i]
- INS_RT_STRU.printid[chC] = dw_child.Object.u_buytaskmx_printid[ls_i]
- INS_RT_STRU.buytaskcode[chC] = ls_taskcode
- INS_RT_STRU.status[chC] = dw_child.Object.u_buytaskmx_status[ls_i]
- INS_RT_STRU.woodcode[chC] = dw_child.Object.u_buytaskmx_woodcode[ls_i]
- INS_RT_STRU.pcode[chC] = dw_child.Object.u_buytaskmx_pcode[ls_i]
- INS_RT_STRU.orderid[chC] = dw_child.Object.u_buytaskmx_orderid[ls_i]
- INS_RT_STRU.banktypeid[chC] = ll_banktypeid
- INS_RT_STRU.dscrp[chC] = dw_child.Object.dscrp[ls_i]
- INS_RT_STRU.mtrlsectype[chC] = dw_child.Object.u_mtrldef_mtrlsectype[ls_i]
- INS_RT_STRU.mtrltype[chC] = dw_child.Object.u_mtrldef_mtrltype[ls_i]
- INS_RT_STRU.zxmtrlmode[chC] = dw_child.Object.u_mtrldef_zxmtrlmode[ls_i]
- INS_RT_STRU.relcode[chC] = ''
- INS_RT_STRU.sptmtrlname[chC] = dw_child.Object.u_buytaskmx_sptmtrlname[ls_i]
- INS_RT_STRU.tax[chC] = dw_child.Object.u_buytaskmx_tax[ls_i]
- INS_RT_STRU.plancode[chC] = dw_child.Object.u_buytaskmx_plancode[ls_i]
-
- INS_RT_STRU.dscrp2[chC] = dw_child.Object.u_buytaskmx_dscrp2[ls_i]
- INS_RT_STRU.dscrp3[chC] = dw_child.Object.u_buytaskmx_dscrp3[ls_i]
- INS_RT_STRU.dscrp4[chC] = dw_child.Object.u_buytaskmx_dscrp4[ls_i]
-
-
-
- INS_RT_STRU.billtype[chC] = ll_billtype
-
- IF ll_billtype = 1 THEN //成品采购的
- INS_RT_STRU.cusid[chC] = dw_child.Object.u_saletask_cusid[ls_i]
- INS_RT_STRU.cuscode[chC] = dw_child.Object.u_cust_cuscode[ls_i]
- INS_RT_STRU.cusname[chC] = dw_child.Object.u_cust_name[ls_i]
- ELSE
- INS_RT_STRU.cusid[chC] = 0
- INS_RT_STRU.cuscode[chC] = ''
- INS_RT_STRU.cusname[chC] = ''
- END IF
-
- NEXT
-
-
-
-
-
- w_inware_buy.wf_ue_f7(INS_RT_STRU)
-
-
-
-
-
-
-
-
-
-
-
-
-
- END IF
- end event
- event ue_create_taskdamt();//辅助生成采购订单收款单
- //IF Not f_power_ind(1020) THEN
- // MessageBox('提示','你没有订单收款单的使用权限!', Information!, OK! )
- // RETURN
- //END IF
- Long cnt
- String arg_msg
- Long i,j
- Long ll_scid, ll_taskid
- dw_pageretr.AcceptText()
- i = dw_pageretr.GetRow()
- IF i <= 0 THEN
- MessageBox('系统提示','请选定当前目标订单!',Information!,OK!)
- RETURN
- END IF
- IF (dw_pageretr.Object.u_buytask_status[i] = 0 ) THEN
- MessageBox('系统提示','当前选定订单未审核!',Information!,OK!)
- RETURN
- END IF
- ll_scid = dw_pageretr.Object.u_buytask_scid[i]
- ll_taskid = dw_pageretr.Object.taskid[i]
- s_edit_index_tran s_open
- IF Not IsValid( w_taskdamt_buy) THEN
- OpenWithParm( w_taskdamt_buy,s_open)
- w_taskdamt_buy.ddlb_scid.uf_selectsc(ll_scid)
- w_taskdamt_buy.cb_add.TriggerEvent(Clicked!)
- w_taskdamt_buy.wf_adduc_buytask(ll_scid, ll_taskid, arg_msg)
- END IF
- end event
- event retrieve_fjnum();
- Long i,ls_filecount
- string arg_billcode
- dw_pageretr.SetRedraw(False)
- FOR i = 1 To dw_pageretr.RowCount()
-
- arg_billcode = dw_pageretr.Object.taskcode[i]
-
- ls_filecount = 0
- SELECT count(*) INTO :ls_filecount
- FROM u_file
- WHERE relcode = :arg_billcode
-
- AND scid = 0
- AND billtype =401
- Using sys_filedb_sqlca;
-
- IF ls_filecount <> 0 then
- dw_pageretr.Object.fj_num[i] = String(ls_filecount)
- end if
-
- NEXT
- dw_pageretr.SetRedraw(true)
- end event
- event ue_cmpl_tax();If dw_child.GetRow() = 0 Then Return
- Long child_row
- child_row = dw_child.GetRow()
- Decimal lde_saleqty, lde_rebate ,lde_taxamt,lde_enprice,lde_enprice_notax
- lde_saleqty = dw_child.Object.u_buytaskmx_uqty[child_row]
- lde_rebate = dw_child.Object.u_buytaskmx_rebate[child_row]
- lde_enprice = dw_child.Object.u_buytaskmx_uprice[child_row]
- lde_enprice_notax = dw_child.Object.u_buytaskmx_uprice_notax[child_row]
- If lde_saleqty = 0 Then
- MessageBox('提示','请填写数量!')
- Return
- End If
- If lde_enprice = 0 And lde_enprice_notax = 0 Then
- MessageBox('提示','请填写含税单价或者不含税单价')
- Return
- End If
- If Not IsValid(w_ware_cmpl_taxamt) Then
- s_edit_index_tran s_tran_tax
- s_tran_tax.b_string = dw_child.Object.u_buytaskmx_unit[child_row] //单位
-
- OpenWithParm(w_ware_cmpl_taxamt,s_tran_tax)
-
- s_edit_index_tran s_return
- s_return = Message.PowerObjectParm
-
- If Not IsNull(s_return) Then
- If s_return.b_decimal = 0 Then Return
- lde_taxamt = s_return.b_decimal
- dw_child.Object.u_buytaskmx_uamt_tax[child_row] = lde_taxamt * lde_saleqty //总税金
-
- If lde_enprice <> 0 Then
- dw_child.Object.u_buytaskmx_uamt[child_row] = Round( lde_enprice * lde_rebate * lde_saleqty, 2) //总金额
- // dw_child.Object.uamt_notax[child_row] = dw_child.Object.u_buytaskmx_uamt[child_row] - dw_child.Object.u_buytaskmx_uamt_tax[child_row] //不含税总金额
- dw_child.Object.u_buytaskmx_uprice_notax[child_row] = lde_enprice - lde_taxamt //不含税单价
- dw_child.Object.u_buytaskmx_tax[child_row] = lde_taxamt / (lde_enprice - lde_taxamt) //税率
- elseif lde_enprice_notax <> 0 then
- // dw_child.Object.uamt_notax[child_row] = Round( lde_enprice_notax * lde_rebate * lde_saleqty, 2) //不含税总金额
- dw_child.Object.u_buytaskmx_uamt[child_row] = dw_child.Object.uamt_notax[child_row] + dw_child.Object.u_buytaskmx_uamt_tax[child_row] //总金额
- dw_child.Object.u_buytaskmx_uprice[child_row] = lde_enprice_notax + lde_taxamt //单价
- dw_child.Object.u_buytaskmx_tax[child_row] = lde_taxamt / lde_enprice_notax //税率
-
- End If
-
-
- End If
- End If
- end event
- event ue_buytask_mod();//
- long ll_row
- ll_row = dw_pageretr.getrow()
- IF dw_pageretr.object.u_buytask_status[ll_row] <> 1 THEN RETURN
- s_edit_index_tran s_mod
- s_mod.b_long = dw_pageretr.object.taskid[ll_row]
- s_mod.c_long = dw_pageretr.Object.u_buytask_scid[ll_row]
- OpenWithParm(w_buytaskmx_mod,s_mod)
- This.TriggerEvent("retrieve_childdw")
- end event
- event ue_p_cmpl_price();IF dw_child.RowCount() = 0 THEN RETURN
- Long i
- String ls_formula
- String ls_msg
- String ls_rs
- String ls_num
- Decimal ld_addqty
- Decimal ld_price
- Decimal ld_rebate
- Decimal ld_qty
- dw_child.AcceptText()
- s_cmpl_qty s_cmpl
- Open(w_cmpl_qty_ch_son)
- s_cmpl = Message.PowerObjectParm
- IF s_cmpl.retu = 0 THEN RETURN
- dw_uc.SetRedraw(FALSE)
- FOR i = 1 TO dw_child.RowCount()
- ld_qty = 0
- IF dw_child.Object.u_buytaskmx_formula2[i] <> '' THEN
-
- s_cmpl.formula = dw_child.Object.u_buytaskmx_formula2[i]
- s_cmpl.addqty = dw_child.Object.u_buytaskmx_addqty[i]
- s_cmpl.price = dw_child.Object.u_buytaskmx_uprice[i]
- s_cmpl.rebate = dw_child.Object.u_buytaskmx_rebate[i]
-
- s_cmpl.status = dw_child.Object.u_buytaskmx_status[i]
- s_cmpl.woodcode = dw_child.Object.u_buytaskmx_woodcode[i]
- s_cmpl.pcode = dw_child.Object.u_buytaskmx_pcode[i]
- s_cmpl.mtrlsectype = dw_child.Object.u_mtrldef_mtrlsectype[i]
- s_cmpl.zxmtrlmode = dw_child.Object.u_mtrldef_zxmtrlmode[i]
-
-
- IF f_cmpl_qty(s_cmpl,ld_qty,ls_msg) = 0 THEN
- MessageBox('提示','第' + String(i) + '行,' + ls_msg, Information!, OK! )
- GOTO ext
- END IF
- dw_child.Object.u_buytaskmx_uprice[i] = ld_qty
- END IF
- NEXT
- ext:
- dw_child.SetColumn('u_buytaskmx_uqty')
- dw_uc.SetRedraw(TRUE)
- end event
- event ue_cmpl_price();
- IF not dw_edit_mode THEN RETURN
- IF dw_child.GetRow() = 0 THEN RETURN
- Long child_row
- dw_child.AcceptText()
- child_row = dw_child.GetRow()
- s_cmpl_qty s_cmpl,s_return
- s_cmpl.qty = dw_child.Object.u_buytaskmx_uqty[child_row]
- s_cmpl.formula = dw_child.Object.u_buytaskmx_formula2[child_row]
- s_cmpl.addqty = dw_child.Object.u_buytaskmx_addqty[child_row]
- s_cmpl.price = dw_child.Object.u_buytaskmx_uprice[child_row]
- s_cmpl.rebate = dw_child.Object.u_buytaskmx_rebate[child_row]
- s_cmpl.status = dw_child.Object.u_buytaskmx_status[child_row]
- s_cmpl.woodcode = dw_child.Object.u_buytaskmx_woodcode[child_row]
- s_cmpl.pcode = dw_child.Object.u_buytaskmx_pcode[child_row]
- s_cmpl.mtrlsectype = dw_child.Object.u_mtrldef_mtrlsectype[child_row]
- s_cmpl.zxmtrlmode = dw_child.Object.u_mtrldef_zxmtrlmode[child_row]
-
- IF NOT IsValid(w_cmpl_qty_ch) THEN
- OpenWithParm(w_cmpl_qty_ch,s_cmpl)
- s_return = Message.PowerObjectParm
- IF s_return.formula <> s_cmpl.formula or s_return.qty <> s_cmpl.qty THEN
- dw_child.Object.u_buytaskmx_uprice[child_row] = s_return.qty
- dw_child.Object.u_buytaskmx_formula2[child_row] = s_return.formula
- END IF
- END IF
- end event
- event ue_his();IF NOT dw_edit_mode THEN RETURN
- Long child_row
- Long ll_sptid,ls_mtrlid
- Decimal ls_price,ls_rebate,lde_rate,ld_tax
- Int li_statusflag,li_woodcodeflag,li_pcodeflag
- String arg_msg
- String ls_sptmtrlname,ls_sptmtrlcode,ls_sptmtrlmode
- s_mtrldef_array arg_s_mtrldef
- child_row = dw_child.GetRow()
- dw_uc.accepttext()
- if dw_uc.GetRow() = 0 then return
- ll_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- IF IsNull(ll_sptid) OR ll_sptid = 0 THEN
- THIS.TriggerEvent("ue_f9")
- ll_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- IF IsNull(ll_sptid) OR ll_sptid = 0 THEN
- MessageBox('提示','请选择供应商', Information!, OK! )
- RETURN
- END IF
- END IF
- IF NOT IsValid(w_buytask_mtrl_his_ch) THEN
- s_edit_index_tran s_tranf8 //传递参数使用
- // s_tranf8.if_retrieve_all = FALSE //是否一次retrieve所有行
- s_tranf8.if_retrieve_all = this.retrieve_all //是否一次retrieve所有行
- s_tranf8.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式
- s_tranf8.arg_pkid = 0 //目标定位pkid (备用)
- s_tranf8.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选
- s_tranf8.if_select_all = TRUE //多选
- s_tranf8.b_long = 0
- s_tranf8.d_long = ll_sptid
-
- Long ls_j
- OpenWithParm(w_buytask_mtrl_his_ch,s_tranf8) //调用
-
- s_buytaskmx_arr s_inscust
- s_inscust = Message.PowerObjectParm //接受返回结构
- FOR ls_j = 1 TO UpperBound(s_inscust.mtrlid)
- IF s_inscust.mtrlid[ls_j] > 0 THEN //正常返回值则可以取以下值
- IF dw_child.GetRow() > 0 THEN
- IF dw_child.Object.mtrlid[child_row] <> 0 THEN
- child_row = dw_child.InsertRow (0)
- ELSE
- child_row = dw_child.GetRow()
- END IF
- ELSE
- child_row = dw_child.InsertRow (0)
- END IF
-
- IF child_row > 1 THEN
- dw_child.AcceptText()
- dw_child.Object.u_buytaskmx_storageid[child_row] = dw_child.Object.u_buytaskmx_storageid[child_row - 1]
- END IF
-
- dw_child.Object.mtrlid[child_row] = S_INSCUST.mtrlid[ls_j]
- dw_child.Object.u_mtrldef_mtrlcode [child_row] = S_INSCUST.mtrlcode[ls_j]
- dw_child.Object.mtrlname[child_row] = S_INSCUST.mtrlname[ls_j]
- dw_child.Object.u_mtrldef_mtrlmode[child_row] = S_INSCUST.mtrlmode[ls_j]
- dw_child.Object.u_mtrldef_unit[child_row] = S_INSCUST.unit[ls_j]
- dw_child.Object.qty[child_row] = 0
-
- dw_child.Object.u_mtrldef_zxmtrlmode[child_row] = S_INSCUST.zxmtrlmode[ls_j]
- dw_child.Object.u_mtrldef_mtrlsectype[child_row] = S_INSCUST.mtrlsectype[ls_j]
- dw_child.Object.u_mtrldef_mtrltype[child_row] = S_INSCUST.mtrltype[ls_j]
-
- dw_child.Object.u_buytaskmx_status[child_row] = S_INSCUST.status[ls_j]
- dw_child.Object.u_buytaskmx_woodcode[child_row] = S_INSCUST.woodcode[ls_j]
- dw_child.Object.u_buytaskmx_pcode[child_row] = S_INSCUST.pcode[ls_j]
-
- dw_child.Object.u_buytaskmx_unit[child_row] = S_INSCUST.unit[ls_j]
- //dw_child.Object.u_buytaskmx_rate[child_row] = S_INSCUST.rate[ls_j]
-
- ll_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]//供应商物料别名
- ls_mtrlid =S_INSCUST.mtrlid[ls_j]
- Select isnull(sptmtrlcode,''), isnull(sptmtrlname,''), isnull(sptmtrlmode,'')
- Into :ls_sptmtrlcode, :ls_sptmtrlname, :ls_sptmtrlmode
- From u_sptmtrlname
- Where mtrlid= :ls_mtrlid and sptid= :ll_sptid ;
- dw_child.Object.u_sptmtrlname_sptmtrlname[child_row] = ls_sptmtrlname
- dw_child.Object.u_sptmtrlname_sptmtrlcode[child_row] = ls_sptmtrlcode
- dw_child.Object.u_sptmtrlname_sptmtrlmode[child_row] =ls_sptmtrlmode
-
- IF f_find_tax(ll_sptid,'u_spt',ld_tax) = 0 then
- ld_tax = 0
- ELSE
- dw_child.Object.u_buytaskmx_tax[child_row] = ld_tax
- END IF
-
- IF f_find_mtrl(s_inscust.mtrlcode[ls_j],-1,arg_s_mtrldef) = 0 THEN
- li_statusflag = 0
- li_woodcodeflag = 0
- li_pcodeflag = 0
- ELSE
- li_statusflag = arg_s_mtrldef.statusflag[1]
- li_pcodeflag = arg_s_mtrldef.pcodeflag[1]
- li_woodcodeflag = arg_s_mtrldef.woodcodeflag[1]
- END IF
- dw_child.Object.u_mtrldef_statusflag[child_row] = li_statusflag
- dw_child.Object.u_mtrldef_woodcodeflag[child_row] = li_woodcodeflag
- dw_child.Object.u_mtrldef_pcodeflag[child_row] = li_pcodeflag
-
- dw_child.Object.u_buytaskmx_rebate[child_row] = S_INSCUST.rebate[ls_j]
- dw_child.Object.u_buytaskmx_uprice[child_row] = S_INSCUST.price[ls_j]
- //wf_get_price(child_row)
- wf_get_sptmtrlname(child_row)
-
-
- END IF
- NEXT
- END IF
- end event
- event ue_p_formula2_set();IF NOT dw_edit_mode THEN RETURN
- IF MessageBox('提示','是否要确定要批设定单价公式', question!, YesNo!, 2) = 2 THEN
- RETURN
- END IF
- Long ll_i
- dw_child.AcceptText()
- dw_child.SetRedraw(FALSE)
- FOR ll_i = 1 TO dw_child.RowCount()
- IF ll_i = 1 THEN CONTINUE
- dw_child.Object.u_buytaskmx_formula2[ll_i] = dw_child.Object.u_buytaskmx_formula2[1]
- NEXT
- dw_child.SetRedraw(TRUE)
- end event
- event ue_view_mxdscrp();s_view_dscrp s_view,s_return
- String ls_dscrp
- dw_child.AcceptText()
- ls_dscrp = dw_child.Object.dscrp[dw_child.GetRow()]
- s_view.Title = '采购订单明细备注'
- s_view.dscrp = ls_dscrp
- s_view.editmode = dw_edit_mode
- OpenWithParm(w_view_dscrp_buy,s_view)
- IF dw_edit_mode THEN
- s_return = Message.PowerObjectParm
- dw_child.Object.dscrp[dw_child.GetRow()] = s_return.dscrp
- END IF
- end event
- event ue_view_mxdscrp3();s_view_dscrp s_view,s_return
- String ls_dscrp
- dw_child.AcceptText()
- ls_dscrp = dw_child.Object.u_buytaskmx_dscrp3[dw_child.GetRow()]
- s_view.Title = '采购订单明细备注3'
- s_view.dscrp = ls_dscrp
- s_view.editmode = dw_edit_mode
- OpenWithParm(w_view_dscrp_buy,s_view)
- IF dw_edit_mode THEN
- s_return = Message.PowerObjectParm
- dw_child.Object.u_buytaskmx_dscrp3[dw_child.GetRow()] = s_return.dscrp
- END IF
- end event
- event ue_view_mxdscrp4();s_view_dscrp s_view,s_return
- String ls_dscrp
- dw_child.AcceptText()
- ls_dscrp = dw_child.Object.u_buytaskmx_dscrp4[dw_child.GetRow()]
- s_view.Title = '采购订单明细备注4'
- s_view.dscrp = ls_dscrp
- s_view.editmode = dw_edit_mode
- OpenWithParm(w_view_dscrp_buy,s_view)
- IF dw_edit_mode THEN
- s_return = Message.PowerObjectParm
- dw_child.Object.u_buytaskmx_dscrp4[dw_child.GetRow()] = s_return.dscrp
- END IF
- end event
- event ue_view_mxdscrp2();s_view_dscrp s_view,s_return
- String ls_dscrp
- dw_child.AcceptText()
- ls_dscrp = dw_child.Object.u_buytaskmx_dscrp2[dw_child.GetRow()]
- s_view.Title = '采购订单明细备注2'
- s_view.dscrp = ls_dscrp
- s_view.editmode = dw_edit_mode
- OpenWithParm(w_view_dscrp_buy,s_view)
- IF dw_edit_mode THEN
- s_return = Message.PowerObjectParm
- dw_child.Object.u_buytaskmx_dscrp2[dw_child.GetRow()] = s_return.dscrp
- END IF
- end event
- event ue_get_maxprice();IF Not dw_edit_mode THEN RETURN
- dw_uc.AcceptText()
- IF dw_uc.GetRow() = 0 THEN RETURN
- long i ,ls_mtrlid , ls_sptid
- string ls_unit,ls_status,ls_woodcode,ls_pcode
- datetime ls_opdate,ls_opdatemax
- decimal ls_maxprice
- FOR i = 1 To dw_child.rowcount()
- ls_mtrlid = dw_child.Object.mtrlid[i]
- ls_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- ls_unit = dw_child.Object.u_buytaskmx_unit[i]
- ls_status = dw_child.Object.u_buytaskmx_status[i]
- ls_woodcode = dw_child.Object.u_buytaskmx_woodcode[i]
- ls_pcode = dw_child.Object.u_buytaskmx_pcode[i]
- IF dw_uc.Object.taskid[dw_uc.GetRow()] = 0 THEN
- ls_opdate = DateTime(Date(Today()),Time(Now()))
- ELSE
- ls_opdate = dw_uc.Object.opdate[dw_uc.GetRow()]
- END IF
-
- Select MAX(opdate)as opdate Into:ls_opdatemax from u_spt_price_MX
- where buildtype=0 and Opdate<=:ls_opdate and sptid=:ls_sptid and mtrlid=:ls_mtrlid and unit=:ls_unit and status=:ls_status and woodcode=:ls_woodcode and pcode=:ls_pcode
- group by sptid,mtrlid,status,unit,woodcode,pcode;
- IF sqlca.SQLCode <> 0 THEN
- ls_maxprice = 0
- ELSE
- Select Top 1 price into :ls_maxprice from u_spt_price_MX
- where buildtype=0 and Opdate<=:ls_opdate and sptid=:ls_sptid and mtrlid=:ls_mtrlid and unit=:ls_unit
- and status=:ls_status and woodcode=:ls_woodcode and pcode=:ls_pcode and opdate = :ls_opdatemax;
- IF sqlca.SQLCode <> 0 THEN
- ls_maxprice = 0
- END IF
- END IF
-
- dw_child.Object.maxprice[i] = ls_maxprice
- NEXT
- end event
- event ue_priceaudit();IF dw_edit_mode THEN
- MessageBox('提示',"编辑状态下不可以使用!",information!,OK!)
- RETURN
- END IF
- String arg_msg
- Long pagerert_row
- String ls_taskcode
- pagerert_row = dw_pageretr.GetRow()
- IF pagerert_row <= 0 THEN
- MessageBox('提示','请选定当前目标单据!',information!,OK!)
- RETURN
- END IF
- IF obj_task.priceaudit(dw_pageretr.Object.u_buytask_scid[pagerert_row],dw_pageretr.Object.taskid[pagerert_row],True,arg_msg) = 0 THEN
- MessageBox('错误',arg_msg,stopsign!,OK!)
- RETURN
- END IF
- MessageBox('提示','确认成功!',information!,OK!)
- wf_refresh_curuc(dw_pageretr.Object.u_buytask_scid[pagerert_row],dw_pageretr.Object.taskid[pagerert_row])
- end event
- event ue_cpriceaudit();IF dw_edit_mode THEN
- MessageBox('提示',"编辑状态下不可以使用!",information!,OK!)
- RETURN
- END IF
- String arg_msg
- Long pagerert_row
- String ls_taskcode
- pagerert_row = dw_pageretr.GetRow()
- IF pagerert_row <= 0 THEN
- MessageBox('提示','请选定当前目标单据!',information!,OK!)
- RETURN
- END IF
- IF obj_task.c_priceaudit(dw_pageretr.Object.u_buytask_scid[pagerert_row],dw_pageretr.Object.taskid[pagerert_row],True,arg_msg) = 0 THEN
- MessageBox('错误',arg_msg,stopsign!,OK!)
- RETURN
- END IF
- MessageBox('提示','反确认成功!',information!,OK!)
- wf_refresh_curuc(dw_pageretr.Object.u_buytask_scid[pagerert_row],dw_pageretr.Object.taskid[pagerert_row])
- end event
- public function integer wf_statusbtn_fc ();//wf_statusbtn_fc
- IF dw_edit_mode THEN
- cb_auditing_cancel.Enabled = FALSE
- cb_auditing.Enabled = FALSE
- RETURN 0
- END IF
- Long ls_row,status
- ls_row = dw_pageretr.GetRow()
- IF NOT ls_row > 0 THEN
- cb_auditing_cancel.Enabled = FALSE
- cb_auditing.Enabled = FALSE
- RETURN 0
- END IF
- status = dw_pageretr.Object.u_buytask_status[ls_row]
- CHOOSE CASE status
- CASE 0
- cb_auditing_cancel.Enabled = FALSE
- cb_auditing.Enabled = TRUE
- CASE 1
- cb_auditing_cancel.Enabled = TRUE
- cb_auditing.Enabled = FALSE
- CASE 2
- cb_auditing_cancel.Enabled = FALSE
- cb_auditing.Enabled = FALSE
- CASE 3
- cb_auditing_cancel.Enabled = FALSE
- cb_auditing.Enabled = FALSE
- CASE 4
- cb_auditing_cancel.Enabled = FALSE
- cb_auditing.Enabled = FALSE
- CASE 5
- cb_auditing_cancel.Enabled = FALSE
- cb_auditing.Enabled = FALSE
- CASE 6
- cb_auditing_cancel.Enabled = FALSE
- cb_auditing.Enabled = FALSE
- CASE ELSE
- cb_auditing_cancel.Enabled = TRUE
- cb_auditing.Enabled = TRUE
- END CHOOSE
- RETURN 0
- end function
- public subroutine wf_autoaddmx (long arg_mtrlid[], decimal arg_qty[]);Long p_rqmtrl,li
- Long child_row,ls_mtrlid
- String ls_mtrlcode,ls_mtrlname,ls_unit,ls_mtrlmode
- dw_child.Reset()
- p_rqmtrl = UpperBound(arg_mtrlid)
- FOR li = 1 To p_rqmtrl
- ls_mtrlcode = ''
- ls_mtrlname = ''
- ls_unit = ''
- ls_mtrlmode = ''
- ls_mtrlid = 0
-
- SELECT u_mtrldef.mtrlcode,
- u_mtrldef.mtrlname,
- u_mtrldef.unit,
- u_mtrldef.mtrlmode,
- u_mtrldef.mtrlid
- INTO :ls_mtrlcode,:ls_mtrlname,:ls_unit,:ls_mtrlmode,:ls_mtrlid
- FROM u_mtrldef
- Where ( u_mtrldef.mtrlid = :arg_mtrlid[li]);
-
- IF sqlca.SQLCode = 0 THEN
- child_row = dw_child.InsertRow (0)
- dw_child.Object.mtrlid[child_row] = ls_mtrlid
- dw_child.Object.u_mtrldef_mtrlcode[child_row] = ls_mtrlcode
- dw_child.Object.u_mtrldef_mtrlmode[child_row] = ls_mtrlmode
- dw_child.Object.mtrlname[child_row] = ls_mtrlname
- dw_child.Object.qty[child_row] = arg_qty[li]
- dw_child.Object.u_buytaskmx_iforder[child_row] = 0
- END IF
- NEXT
- end subroutine
- public function integer wf_refresh_curuc (long arg_scid, long arg_taskid);//wf_refresh_curuc
- Int rslt = 1
- IF arg_taskid <= 0 OR IsNull(arg_taskid) THEN
- rslt = 0
- GOTO ext
- END IF
- Long uc_row
- uc_row = dw_pageretr.GetRow()
- IF uc_row <= 0 THEN
- rslt = 0
- GOTO ext
- END IF
- Int Kind
- DateTime requiredate
- String assign_emp
- String dscrp
- String taskcode
- Long sptid
- DateTime accomplishdate
- Int status
- String operator
- String permit_emp
- DateTime opdate
- String last_emp
- String u_spt_name
- String sptcode
- String finishemp
- string modemp
- datetime moddate
- datetime permit_date
- long banktypeid
- string relcode
- string train
- long billtype
- decimal mrate
- long moneyid
- decimal mstpayamt, payamt, nopayamt
- string priceemp
- datetime pricedate
- long priceflag
- SELECT u_buytask.kind,
- u_buytask.requiredate,
- u_buytask.assign_emp,
- u_buytask.dscrp,
- u_buytask.taskcode,
- u_buytask.sptid,
- u_buytask.accomplishdate,
- u_buytask.status,
- u_buytask.opemp,
- u_buytask.permit_emp,
- u_buytask.opdate,
- u_spt.name,
- u_spt.sptcode,
- u_buytask.finishemp,
- u_buytask.modemp,
- u_buytask.moddate,
- u_buytask.permit_date,
- u_buytask.banktypeid,
- u_buytask.relcode,
- u_buytask.train,
- u_buytask.billtype,
- u_buytask.mrate,
- u_buytask.moneyid,
- u_buyTask.mstpayamt,
- u_buyTask.payamt,
- u_buyTask.mstpayamt - u_buyTask.payamt as nopayamt,
- u_buyTask.priceemp,
- u_buyTask.pricedate,
- u_buyTask.priceflag
- INTO :Kind,
- :requiredate,
- :assign_emp,
- :dscrp,
- :taskcode,
- :sptid,
- :accomplishdate,
- :status,
- :operator,
- :permit_emp,
- :opdate,
- :u_spt_name,
- :sptcode,
- :finishemp,
- :modemp,
- :moddate,
- :permit_date,
- :banktypeid,
- :relcode,
- :train,
- :billtype,
- :mrate,
- :moneyid ,
- :mstpayamt,
- :payamt,
- :nopayamt,
- :priceemp,
- :pricedate,
- :priceflag
- FROM u_buytask left OUTER join
- u_spt on ( u_buytask.sptid = u_spt.sptid )
- Where ( u_buytask.taskid = :arg_taskid ) AND scid = :cur_scid ;
- IF sqlca.SQLCode <> 0 THEN
- MessageBox('提示',"查询操作失败(错误订单唯一码)", Information!, OK! )
- rslt = 0
- GOTO ext
- END IF
- dw_pageretr.Object.u_buytask_scid[uc_row] = arg_scid
- dw_pageretr.Object.taskid[uc_row] = arg_taskid
- dw_pageretr.Object.Kind[uc_row] = Kind
- dw_pageretr.Object.requiredate[uc_row] = requiredate
- dw_pageretr.Object.assign_emp[uc_row] = assign_emp
- dw_pageretr.Object.dscrp[uc_row] = dscrp
- dw_pageretr.Object.taskcode[uc_row] = taskcode
- dw_pageretr.Object.sptid[uc_row] = sptid
- dw_pageretr.Object.accomplishdate[uc_row] = accomplishdate
- dw_pageretr.Object.u_buytask_status[uc_row] = status
- dw_pageretr.Object.u_buytask_opemp[uc_row] = operator
- dw_pageretr.Object.permit_emp[uc_row] = permit_emp
- dw_pageretr.Object.u_saletask_opdate[uc_row] = opdate
- dw_pageretr.Object.u_spt_name[uc_row] = u_spt_name
- dw_pageretr.Object.sptcode[uc_row] = sptcode
- dw_pageretr.Object.u_buytask_finishemp[uc_row] = finishemp
- dw_pageretr.Object.u_buytask_modemp[uc_row] = modemp
- dw_pageretr.Object.u_buytask_moddate[uc_row] = moddate
- dw_pageretr.Object.u_buytask_permit_date[uc_row] = permit_date
- dw_pageretr.Object.u_buytask_banktypeid[uc_row] = banktypeid
- dw_pageretr.Object.u_buytask_relcode[uc_row] = relcode
- dw_pageretr.Object.u_buytask_train[uc_row] = train
- dw_pageretr.Object.u_buytask_billtype[uc_row] = billtype
- dw_pageretr.Object.u_buytask_mrate[uc_row] = mrate
- dw_pageretr.Object.u_buytask_moneyid[uc_row] = moneyid
- dw_pageretr.Object.u_buytask_mstpayamt[uc_row] = mstpayamt
- dw_pageretr.Object.u_buytask_payamt[uc_row] = payamt
- dw_pageretr.Object.nopayamt[uc_row] = nopayamt
- dw_pageretr.Object.priceemp[uc_row] = priceemp
- dw_pageretr.Object.pricedate[uc_row] = pricedate
- dw_pageretr.Object.priceflag[uc_row] = priceflag
- dw_uc.Reset()
- dw_pageretr.RowsCopy(dw_pageretr.GetRow(), dw_pageretr.GetRow(), Primary!, dw_uc, 1, Primary!)
- dw_uc.ResetUpdate()
- dw_uc.SetRedraw(TRUE)
- THIS.PostEvent('retrieve_childdw')
- ext:
- wf_statusbtn_fc()
- RETURN rslt
- end function
- public function integer wf_copy (ref string arg_msg);long rslt=1
- long ll_rowcount
- ll_rowcount=dw_child.rowcount()
- if ll_rowcount<=0 then
- rslt=0
- arg_msg='没有可复制的明细内容'
- goto ext
- end if
- ds_copy.reset()
- if dw_child.RowsCopy(1, ll_rowcount, Primary!, ds_copy, 1, Primary!)= - 1 then
- rslt=0
- arg_msg='复制明细内容失败!'
- goto ext
- end if
- ds_copy.accepttext()
- ext:
- return rslt
- end function
- public function integer wf_paste (ref string arg_msg);Long rslt = 1
- IF NOT dw_edit_mode THEN
- rslt = 0
- arg_msg = '非编辑状态下不可粘贴'
- GOTO ext
- END IF
- Long ll_rowcount
- ll_rowcount = ds_copy.RowCount()
- IF ll_rowcount <= 0 THEN
- rslt = 0
- arg_msg = '没有可粘贴的明细内容'
- GOTO ext
- END IF
- dw_child.Reset()
- Long ll_child_rowcount
- ll_child_rowcount = dw_child.RowCount()
- IF ds_copy.RowsCopy(1, ll_rowcount, Primary!, dw_child, 1, Primary!) = - 1 THEN
- rslt = 0
- arg_msg = '粘贴明细内容失败!'
- GOTO ext
- END IF
- dw_child.AcceptText()
- ext:
- RETURN rslt
- end function
- public subroutine wf_check_billfj ();String arg_msg
- Long ll_ConnectionID
- Long cur_billtype
- long ll_relid,ll_relid_mx,ll_scid
- Long ls_filecount = 0
- Int rslt = 1
- uo_fj_mng_billtype ls_uo_fjbt
- ls_uo_fjbt = CREATE uo_fj_mng_billtype
-
- Long row,uc_relid
- row = dw_pageretr.GetRow()
- IF row > 0 THEN
- ll_relid = dw_pageretr.Object.taskid[row]
- ll_scid = dw_pageretr.Object.u_buytask_scid[row]
- ll_relid_mx = 0
- ELSE
- rslt = 0
- GOTO ext
- END IF
- IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
- rslt = 0
- GOTO ext
- END IF
- cur_billtype = 401 //客户投拆单的 mainiD
- ls_uo_fjbt.uf_check_billfj( cur_billtype, ll_relid,ll_relid_mx,ll_scid, sys_fileDB_sqlca, arg_msg, ls_filecount)
- IF ls_filecount > 0 THEN
- rslt = 1
- GOTO ext
- ELSE
- rslt = 0
- GOTO ext
- END IF
- ext:
- wf_encl(rslt)
- DESTROY ls_uo_fjbt
- end subroutine
- public function integer wf_xls_retrievedata (long arg_ationid, ref s_xls_billlist arg_str_billlist, ref uo_sendtoexcel arg_obj_st, ref string arg_msg);//==============================================================================
- // 函数: w_publ_1ton_share_detail::wf_xls_retrievedata()
- //------------------------------------------------------------------------------
- // 描述: 此函数需要 重载,复制祖先范例代码,然后修改retrieve参数部分两处即可
- //------------------------------------------------------------------------------
- Long LS_ROW,ll_id,i,ll_scid
- LS_ROW = dw_uc.GetRow()
- IF LS_ROW <= 0 THEN
- arg_msg = '没有目标单据!'
- RETURN 0
- END IF
- //修改点:获取 指定retriev参数
- ll_id = dw_uc.Object.#1[LS_ROW]
- ll_scid = dw_uc.Object.u_buytask_scid[LS_ROW]
- //查询所选模版是否含有图片信息
- Long ll_ifpic
- Long ll_classid
- SELECT ifpic
- INTO :ll_ifpic
- FROM U_XLS_Templates
- Where id = :ll_xls_Templatesid;
- IF sqlca.SQLCode <> 0 THEN
- ll_ifpic = 0
- END IF
- Long ll_i,ll_j
- Long ll_mtrlid
- Long ll_fileid
- Blob ls_filedata
- SetNull(ls_filedata)
- String Pathname,ls_filename,ls_filetype
- String errmsg
- uo_fj_mng_billtype ls_uo_fjbt
- ls_uo_fjbt = CREATE uo_fj_mng_billtype
- s_xls_pic_list s_pic //结构数组-用于保存图片路径
- IF ll_ifpic = 1 THEN //如果含有图片信息,则查询本类型单据需要带出哪类附件
- SELECT classid
- INTO :ll_classid
- FROM u_billpic_fileclass
- Where (billtype = 401);
- IF sqlca.SQLCode <> 0 THEN
- ll_classid = 0
- END IF
-
- IF ll_classid > 0 THEN //如果已经指定好附件类型,则循环明细表查询每个明细的图片信息.
- FOR ll_i = 1 TO dw_child.RowCount()
- ll_mtrlid = dw_child.Object.mtrlid[ll_i]
- //取该附件类型中的第一个附件.
- SELECT top 1 fileid,DisplayName,FileType INTO :ll_fileid,:ls_filename,:ls_filetype
- FROM u_file
- WHERE relid = :ll_mtrlid
- AND classid = :ll_classid
- AND (filetype = 'bmp' OR filetype = 'rle' OR filetype = 'wmf'
- OR filetype = 'tif' OR filetype = 'jpg' OR filetype = 'gif' OR filetype = 'jpeg')
- USING sys_fileDB_sqlca;
- IF sys_fileDB_sqlca.SQLCode <> 0 THEN
- ll_fileid = 0
- END IF
- IF ll_fileid > 0 THEN
- Pathname = sys_cur_path+ins_fjtemppath+'\'+String(Today(),'yymmdd')+String(Now(),'hhmmss')+'_'+ls_filename+'.'+ls_filetype
- IF Trim(Pathname) <> '' THEN
- IF ls_uo_fjbt.uf_getfjbolb_fromdb( ll_fileid, ls_filedata, sys_fileDB_sqlca, arg_msg) = 0 THEN
- RETURN 0
- END IF
-
- IF f_saveblobtofile(ls_filedata,Pathname,errmsg) = 0 THEN
- RETURN 0
- ELSE
-
- s_pic.path[ll_i] = Pathname
- //记录临时文件位置,本窗口退出后删除
- wf_addlog_tempfilepathname(Pathname)
-
- END IF
- ELSE
- s_pic.path[ll_i] = ''
- END IF
- ELSE
- s_pic.path[ll_i] = ''
- END IF
- NEXT
- END IF
- //
- END IF
- ////可选设置///
- arg_obj_st.uo_const.create_new_pwd( ) //创建随机密码
- if sys_option_xls_ifuse_passwd = 1 then arg_obj_st.uo_const.pwd = trim(sys_option_xls_user_passwd) //默认加密密码 默认为随即密码
- boolean xls_locked
- xls_locked = not (sys_option_xls_lock = 1)
- /// Excel 的可选设置
- if arg_obj_st.of_setoption(arg_ationid, xls_locked,true,arg_msg) <> 1 then
- return 0
- end if
- for i = 1 to arg_str_billlist.count
- ////可选操作///
- arg_str_billlist.bill[i].ds_data = create datastore //
- arg_str_billlist.bill[i].ds_data.dataobject = arg_str_billlist.bill[i].datawindow //
- arg_str_billlist.bill[i].ds_data.settransobject(sqlca)
-
- //修改点:注意retrieve 参数与上文对应
- arg_str_billlist.bill[i].ds_data.retrieve(ll_scid,ll_id)
- IF ll_ifpic = 1 and ll_classid > 0 THEN
- //arg_str_billlist.bill[i].datawindow = 'dw_xls_buytaskmx' AND
- IF pos(arg_str_billlist.bill[i].datawindow , 'dw_xls_buytaskmx') > 0 AND arg_str_billlist.bill[i].ds_data.RowCount() > 0 THEN //设置图片路径
- FOR ll_j = 1 TO arg_str_billlist.bill[i].ds_data.RowCount()
- arg_str_billlist.bill[i].ds_data.Object.pic[ll_j] = s_pic.path[ll_j]
- NEXT
- END IF
- END IF
- next
- return 1
- end function
- public function integer wf_print_retrievedata (ref s_print_pic_list arg_s_pic, ref string arg_msg);Long LS_ROW,ll_id,i,ll_scid
- LS_ROW = dw_pageretr.GetRow()
- IF LS_ROW <= 0 THEN
- arg_msg = '没有目标单据!'
- RETURN 0
- END IF
- //修改点:获取 指定retriev参数
- ll_id = dw_pageretr.Object.#1[LS_ROW]
- ll_scid = dw_pageretr.Object.u_buytask_scid[LS_ROW]
- Long ll_i,ll_j
- Long ll_mtrlid
- Long ll_fileid
- Blob ls_filedata
- SetNull(ls_filedata)
- String Pathname,ls_filename,ls_filetype
- String errmsg
- uo_fj_mng_billtype ls_uo_fjbt
- ls_uo_fjbt = CREATE uo_fj_mng_billtype
- Long ll_classid
- SELECT classid
- INTO :ll_classid
- FROM u_billpic_fileclass
- Where (billtype = 201);
- IF sqlca.SQLCode <> 0 THEN
- ll_classid = 0
- END IF
- IF ll_classid > 0 THEN //如果已经指定好附件类型,则循环明细表查询每个明细的图片信息.
- FOR ll_i = 1 TO dw_child.RowCount()
- ll_mtrlid = dw_child.Object.mtrlid[ll_i]
- arg_s_pic.mtrlid[ll_i] = ll_mtrlid
- //取该附件类型中的第一个附件.
- SELECT top 1 fileid,DisplayName,FileType INTO :ll_fileid,:ls_filename,:ls_filetype
- FROM u_file
- WHERE relid = :ll_mtrlid
- AND classid = :ll_classid
- AND (filetype = 'bmp' OR filetype = 'rle' OR filetype = 'wmf'
- OR filetype = 'tif' OR filetype = 'jpg' OR filetype = 'gif' OR filetype = 'jpeg')
- USING sys_fileDB_sqlca;
- IF sys_fileDB_sqlca.SQLCode <> 0 THEN
- ll_fileid = 0
- END IF
- IF ll_fileid > 0 THEN
- Pathname = sys_cur_path+ins_fjtemppath+'\'+String(Today(),'yymmdd')+String(Now(),'hhmmss')+'_'+ls_filename+'.'+ls_filetype
- IF Trim(Pathname) <> '' THEN
- IF ls_uo_fjbt.uf_getfjbolb_fromdb( ll_fileid, ls_filedata, sys_fileDB_sqlca, arg_msg) = 0 THEN
- RETURN 0
- END IF
-
- IF f_saveblobtofile(ls_filedata,Pathname,errmsg) = 0 THEN
- RETURN 0
- ELSE
-
- arg_s_pic.path[ll_i] = Pathname
- //记录临时文件位置,本窗口退出后删除
- wf_addlog_tempfilepathname(Pathname)
- END IF
- ELSE
- arg_s_pic.path[ll_i] = ''
- END IF
- ELSE
- arg_s_pic.path[ll_i] = ''
- END IF
- NEXT
- END IF
- RETURN 1
- end function
- public subroutine wf_change_sptid (long arg_sptid);Long ll_row
- ll_row = dw_uc.GetRow()
- IF ll_row <= 0 THEN RETURN
- //IF dw_uc.Object.sptid[ll_row] > 0 And dw_uc.Object.sptid[ll_row] <> arg_sptid THEN
- // dw_child.Reset()
- // This.TriggerEvent("insert_childrow")
- //END IF
- Long i
- FOR i = 1 To dw_child.RowCount()
- wf_get_price(i)
- wf_get_sptmtrlname(i)
- NEXT
- RETURN
- end subroutine
- public function integer wf_get_price (long arg_row);IF arg_row <= 0 THEN RETURN 1
- IF arg_row > dw_child.RowCount() THEN RETURN 1
- Long rslt = 1
- Long ll_sptid, ll_moneyid
- Long ll_i,ll_mtrlid
- Decimal ls_1stnewcost,ls_1stzqrate,ls_1strate
- String ls_sptmtrlname
- String ls_1stunit, ls_unit
- String ls_status,ls_woodcode,ls_pcode, ls_jgdscrp
- String arg_msg
- decimal lde_price, lde_rebate
- dw_uc.AcceptText()
- dw_child.AcceptText()
- ll_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- IF ll_sptid = 0 THEN RETURN 1
- ll_moneyid = dw_uc.Object.u_buytask_moneyid[dw_uc.GetRow()]
- IF ll_moneyid = 0 THEN RETURN 1
- dw_child.SetRedraw(False)
- // ll_mtrlid = 0
- // ls_1stunit = ''
- ls_1stnewcost = 0
- ls_1stzqrate = 0
- ls_1strate = 0
- ll_mtrlid = dw_child.Object.mtrlid[arg_row]
- ls_1stunit = dw_child.Object.u_buytaskmx_unit[arg_row]
- ls_unit = ls_1stunit
- ls_status = dw_child.Object.u_buytaskmx_status[arg_row]
- ls_woodcode = dw_child.Object.u_buytaskmx_woodcode[arg_row]
- ls_pcode = dw_child.Object.u_buytaskmx_pcode[arg_row]
- ls_1stnewcost = 0
- ls_1stzqrate = 1
- IF uo_sptprice.uof_get_mtrl_buyprice(ll_sptid,ll_mtrlid,ls_1stunit,&
- ls_status,ls_woodcode,ls_pcode,0,&
- ls_1stnewcost,ls_1stzqrate,ls_1strate,arg_msg) <> 1 THEN
- ls_1stunit = ls_unit
- ls_1stnewcost = 0
- ls_1stzqrate = 1
- END IF
- IF ls_1stnewcost = 0 THEN
- rslt = 0
- END IF
- dw_child.Object.u_buytaskmx_uprice[arg_row] = ls_1stnewcost
- dw_child.Object.u_buytaskmx_rebate[arg_row] = ls_1stzqrate
- dw_child.SetRedraw(True)
- RETURN rslt
- end function
- public function integer wf_get_sptmtrlname (long arg_row);IF arg_row <= 0 THEN RETURN 1
- IF arg_row > dw_child.RowCount() THEN RETURN 1
- Long rslt = 1
- Long ll_sptid
- Long ll_i,ll_mtrlid
- String ls_sptmtrlname
- String arg_msg
- dw_uc.AcceptText()
- dw_child.AcceptText()
- ll_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- IF ll_sptid = 0 THEN RETURN 1
- dw_child.SetRedraw(False)
- ll_mtrlid = dw_child.Object.mtrlid[arg_row]
- ls_sptmtrlname = ''
- IF uo_sptprice.uf_getmtrlname(ll_sptid,ll_mtrlid,ls_sptmtrlname,arg_msg) <> 1 THEN
- ls_sptmtrlname = ''
- END IF
- dw_child.Object.u_buytaskmx_sptmtrlname[arg_row] = ls_sptmtrlname
- dw_child.SetRedraw(True)
- RETURN rslt
- end function
- public function integer wf_autoaddmx_sale (s_saletask_ch s_saletask);//wf_autoaddmx_sale(long ll_scid,long ll_taskid)
- //查询合同物料资料
- //把物料资料写入数组
- Long rslt = 1, cnt
- Long i, child_row
- long ll_storageid
- Int li_statusflag = 0
- Int li_woodcodeflag = 0
- Int li_pcodeflag = 0
- String arg_msg
- long ll_scid, ll_taskid
- s_mtrldef_array arg_s_mtrldef
- s_mtrldef_buytask_array arg_s_rqmtrl
- ll_scid = s_saletask.scid
- ll_taskid = s_saletask.taskid
- // //查询合同物料
- DECLARE pf_cur CURSOR FOR
- SELECT u_saletask.taskcode,
- u_saletaskmx.taskid,
- u_saletaskmx.printid,
- u_saletaskmx.mtrlid,
- u_mtrldef.mtrlcode,
- u_mtrldef.mtrlname,
- u_mtrldef.mtrlmode,
- u_mtrldef.unit,
- u_mtrldef.mtrlsectype,
- u_mtrldef.zxmtrlmode,
- u_saletaskmx.needbuyqty - u_saletaskmx.buytaskqty,
- u_saletaskmx.addqty,
- u_saletaskmx.unit,
- u_saletaskmx.rate,
- u_saletaskmx.status,
- u_saletaskmx.woodcode,
- u_saletaskmx.pcode,
- u_saletaskmx.mxdscrp,
- u_saletaskmx.mxdscrp2,
- u_saletaskmx.mxdscrp3,
- u_saletaskmx.mxdscrp4,
- u_saletaskmx.plancode
- FROM u_SaleTaskMx INNER JOIN
- u_mtrldef ON u_SaleTaskMx.MtrlID = u_mtrldef.mtrlid INNER JOIN
- u_SaleTask ON u_SaleTaskMx.TaskID = u_SaleTask.TaskID AND
- u_SaleTaskMx.scid = u_SaleTask.scid
- WHERE ( u_saletaskmx.scid = :ll_scid ) AND
- ( u_saletaskmx.taskid = :ll_taskid ) AND
- (u_saletaskmx.needbuyqty - u_saletaskmx.buytaskqty > 0);
- OPEN pf_cur;
- cnt = 1
- FETCH pf_cur INTO
- :arg_s_rqmtrl.relcode[cnt],
- :arg_s_rqmtrl.relid[cnt],
- :arg_s_rqmtrl.relprintid[cnt],
- :arg_s_rqmtrl.mtrlid[cnt],
- :arg_s_rqmtrl.mtrlcode[cnt],
- :arg_s_rqmtrl.mtrlname[cnt],
- :arg_s_rqmtrl.mtrlmode[cnt],
- :arg_s_rqmtrl.unit[cnt],
- :arg_s_rqmtrl.mtrlsectype[cnt],
- :arg_s_rqmtrl.zxmtrlmode[cnt],
- :arg_s_rqmtrl.qty[cnt],
- :arg_s_rqmtrl.addqty[cnt],
- :arg_s_rqmtrl.mxunit[cnt],
- :arg_s_rqmtrl.rate[cnt],
- :arg_s_rqmtrl.status[cnt],
- :arg_s_rqmtrl.woodcode[cnt],
- :arg_s_rqmtrl.pcode[cnt],
- :arg_s_rqmtrl.dscrp[cnt],
- :arg_s_rqmtrl.dscrp2[cnt],
- :arg_s_rqmtrl.dscrp3[cnt],
- :arg_s_rqmtrl.dscrp4[cnt],
- :arg_s_rqmtrl.plancode[cnt];
- DO WHILE sqlca.SQLCode = 0
- cnt++
- FETCH pf_cur INTO
- :arg_s_rqmtrl.relcode[cnt],
- :arg_s_rqmtrl.relid[cnt],
- :arg_s_rqmtrl.relprintid[cnt],
- :arg_s_rqmtrl.mtrlid[cnt],
- :arg_s_rqmtrl.mtrlcode[cnt],
- :arg_s_rqmtrl.mtrlname[cnt],
- :arg_s_rqmtrl.mtrlmode[cnt],
- :arg_s_rqmtrl.unit[cnt],
- :arg_s_rqmtrl.mtrlsectype[cnt],
- :arg_s_rqmtrl.zxmtrlmode[cnt],
- :arg_s_rqmtrl.qty[cnt],
- :arg_s_rqmtrl.addqty[cnt],
- :arg_s_rqmtrl.mxunit[cnt],
- :arg_s_rqmtrl.rate[cnt],
- :arg_s_rqmtrl.status[cnt],
- :arg_s_rqmtrl.woodcode[cnt],
- :arg_s_rqmtrl.pcode[cnt],
- :arg_s_rqmtrl.dscrp[cnt],
- :arg_s_rqmtrl.dscrp2[cnt],
- :arg_s_rqmtrl.dscrp3[cnt],
- :arg_s_rqmtrl.dscrp4[cnt],
- :arg_s_rqmtrl.plancode[cnt];
- LOOP
- cnt = cnt - 1
- CLOSE pf_cur;
- FOR i = 1 To cnt
- IF arg_s_rqmtrl.mtrlid[i] > 0 THEN //正常返回值则可以取以下值
-
- IF dw_child.GetRow() > 0 THEN
- IF dw_child.Object.mtrlid[dw_child.GetRow()] <> 0 THEN
- child_row = dw_child.InsertRow (0)
- ELSE
- child_row = dw_child.GetRow()
- END IF
- ELSE
- child_row = dw_child.InsertRow (0)
- END IF
-
- f_find_dftstorageid(arg_s_rqmtrl.mtrlid[i], ll_storageid)
- dw_child.Object.u_buytaskmx_storageid[child_row] = ll_storageid
-
- dw_child.Object.mtrlid[child_row] = arg_s_rqmtrl.mtrlid[i]
- dw_child.Object.u_mtrldef_mtrlcode [child_row] = arg_s_rqmtrl.mtrlcode[i]
- dw_child.Object.mtrlname[child_row] = arg_s_rqmtrl.mtrlname[i]
- dw_child.Object.u_mtrldef_mtrlmode[child_row] = arg_s_rqmtrl.mtrlmode[i]
- dw_child.Object.u_mtrldef_p_mtrlname[child_row] = arg_s_rqmtrl.mtrlname[i]
- dw_child.Object.u_mtrldef_p_mtrlmode[child_row] = arg_s_rqmtrl.mtrlmode[i]
-
- dw_child.Object.u_mtrldef_unit[child_row] = arg_s_rqmtrl.unit[i]
- dw_child.Object.qty[child_row] = arg_s_rqmtrl.qty[i]
- dw_child.Object.u_buytaskmx_addqty[child_row] = arg_s_rqmtrl.addqty[i]
-
- dw_child.Object.u_buytaskmx_unit[child_row] = arg_s_rqmtrl.unit[i]
- dw_child.Object.u_buytaskmx_rate[child_row] = 1
- dw_child.Object.u_buytaskmx_uqty[child_row] = arg_s_rqmtrl.qty[i]
-
- dw_child.Object.u_buytaskmx_relcode[child_row] = arg_s_rqmtrl.relcode[i]
-
- dw_child.Object.u_buytaskmx_relid[child_row] = arg_s_rqmtrl.relid[i]
- dw_child.Object.u_buytaskmx_relprintid[child_row] = arg_s_rqmtrl.relprintid[i]
-
- dw_child.Object.u_mtrldef_zxmtrlmode[child_row] = arg_s_rqmtrl.zxmtrlmode[i]
- dw_child.Object.u_mtrldef_mtrlsectype[child_row] = arg_s_rqmtrl.mtrlsectype[i]
-
- dw_child.Object.u_buytaskmx_status[child_row] = arg_s_rqmtrl.status[i]
- dw_child.Object.u_buytaskmx_woodcode[child_row] = arg_s_rqmtrl.woodcode[i]
- dw_child.Object.u_buytaskmx_pcode[child_row] = arg_s_rqmtrl.pcode[i]
-
-
-
- IF f_find_mtrl_by_id(arg_s_rqmtrl.mtrlid[i],arg_s_mtrldef) = 0 THEN
- li_statusflag = 0
- li_woodcodeflag = 0
- li_pcodeflag = 0
- ELSE
- li_statusflag = arg_s_mtrldef.statusflag[1]
- li_pcodeflag = arg_s_mtrldef.pcodeflag[1]
- li_woodcodeflag = arg_s_mtrldef.woodcodeflag[1]
- END IF
-
- dw_child.Object.u_mtrldef_statusflag[child_row] = li_statusflag
- dw_child.Object.u_mtrldef_woodcodeflag[child_row] = li_woodcodeflag
- dw_child.Object.u_mtrldef_pcodeflag[child_row] = li_pcodeflag
-
- dw_child.Object.dscrp[child_row] = arg_s_rqmtrl.dscrp[i]
- dw_child.Object.u_buytaskmx_dscrp2[child_row] = arg_s_rqmtrl.dscrp2[i]
- dw_child.Object.u_buytaskmx_dscrp3[child_row] = arg_s_rqmtrl.dscrp3[i]
- dw_child.Object.u_buytaskmx_dscrp4[child_row] = arg_s_rqmtrl.dscrp4[i]
- dw_child.Object.u_buytaskmx_plancode[child_row] = arg_s_rqmtrl.plancode[i]
-
- wf_get_price(child_row)
-
- wf_get_sptmtrlname(child_row)
-
- END IF
-
- NEXT
- dw_child.SetColumn('u_buytaskmx_uqty')
- dw_child.SetFocus()
- This.TriggerEvent('ue_allowedit')
- RETURN rslt
- end function
- public subroutine wf_cmpl_amt (long row);IF row <= 0 THEN RETURN
- IF row > dw_child.RowCount() THEN RETURN
- dw_child.AcceptText()
- dec ld_round = 100
- ld_round = 10.0 ^ (2 - sys_option_inware_buy_amt_round)
- Decimal lde_tax
- lde_tax = dw_child.Object.u_buytaskmx_tax[row]
- //由金额计算单价
- //IF sys_option_outware_if_buyqty = 0 THEN
- IF cbx_enamt_edit.Checked THEN
- IF dw_child.Object.u_buytaskmx_uamt[row] <> 0 THEN
- IF dw_child.Object.u_buytaskmx_rebate[row] <> 0 And dw_child.Object.u_buytaskmx_uqty[row] <> 0 THEN
- dw_child.Object.u_buytaskmx_uprice[row] = dw_child.Object.u_buytaskmx_uamt[row] / dw_child.Object.u_buytaskmx_rebate[row] / dw_child.Object.u_buytaskmx_uqty[row]
-
- dw_child.Object.u_buytaskmx_uprice_notax[row] = dw_child.Object.u_buytaskmx_uprice[row] / ( 1 +lde_tax ) //不含税单价=单价/(1+税率)
- dw_child.Object.u_buytaskmx_uamt_tax [row] = dw_child.Object.u_buytaskmx_uprice_notax[row] * Dec(dw_child.Object.u_buytaskmx_uqty[row]) * lde_tax //税金
- END IF
- END IF
- ELSE
- dw_child.Object.u_buytaskmx_uamt[row] = Round(dw_child.Object.u_buytaskmx_uprice[row]*dw_child.Object.u_buytaskmx_rebate[row]*dw_child.Object.u_buytaskmx_uqty[row] * ld_round,0) / ld_round
-
- dw_child.Object.u_buytaskmx_uamt_tax[row] = dw_child.Object.u_buytaskmx_uprice_notax[row] * Dec(dw_child.Object.u_buytaskmx_uqty[row]) * lde_tax
- END IF
- //ELSE
- // IF cbx_enamt_edit.Checked THEN
- // IF dw_child.Object.u_buytaskmx_uamt[row] <> 0 THEN
- // IF dw_child.Object.u_buytaskmx_rebate[row] <> 0 And dw_child.Object.u_buytaskmx_uqty[row] <> 0 THEN
- // dw_child.Object.u_buytaskmx_uprice[row] = dw_child.Object.u_buytaskmx_uamt[row] / dw_child.Object.u_buytaskmx_rebate[row] / dw_child.Object.u_buytaskmx_uqty[row]
- // END IF
- // END IF
- // ELSE
- // dw_child.Object.u_buytaskmx_uamt[row] = Round(dw_child.Object.u_buytaskmx_uprice[row]*dw_child.Object.u_buytaskmx_rebate[row]*dw_child.Object.u_buytaskmx_uqty[row],2)
- // END IF
- //END IF
- IF cbx_enamt_notax_edit.Checked THEN //录入不含税单价
-
- IF dw_child.Object.u_buytaskmx_uprice_notax[row] <> 0 THEN
-
- dw_child.Object.u_buytaskmx_uprice[row] = dw_child.Object.u_buytaskmx_uprice_notax[row] * (1 + lde_tax)
- dw_child.Object.u_buytaskmx_uamt[row] = Round(dw_child.Object.u_buytaskmx_uprice[row]*dw_child.Object.u_buytaskmx_rebate[row]*dw_child.Object.u_buytaskmx_uqty[row] * ld_round,0) / ld_round
-
- dw_child.Object.u_buytaskmx_uamt_tax[row] = dw_child.Object.u_buytaskmx_uprice_notax[row] * Dec(dw_child.Object.u_buytaskmx_uqty[row]) * lde_tax
-
- END IF
-
- ELSE
- dw_child.Object.u_buytaskmx_uprice_notax[row] = dw_child.Object.u_buytaskmx_uprice[row] / ( 1 + lde_tax) //不含税单价=单价/(1+税率)
- END IF
- end subroutine
- public function integer wf_autoaddmx_will_rq (s_buytaskmx_arr s_buy);//wf_autoaddmx_will_rq(long ll_scid,long ll_taskid)
- //查询合同物料资料
- //把物料资料写入数组
- Long rslt = 1, cnt
- Long i, child_row
- long ll_storageid
- Int li_statusflag = 0
- Int li_woodcodeflag = 0
- Int li_pcodeflag = 0
- String arg_msg
- long ll_scid, ll_taskid
- s_mtrldef_array arg_s_mtrldef
- cnt = upperbound(s_buy.mtrlid)
- FOR i = 1 To cnt
- IF s_buy.mtrlid[i] > 0 THEN //正常返回值则可以取以下值
-
- IF dw_child.GetRow() > 0 THEN
- IF dw_child.Object.mtrlid[dw_child.GetRow()] <> 0 THEN
- child_row = dw_child.InsertRow (0)
- ELSE
- child_row = dw_child.GetRow()
- END IF
- ELSE
- child_row = dw_child.InsertRow (0)
- END IF
-
- f_find_dftstorageid(s_buy.mtrlid[i], ll_storageid)
- dw_child.Object.u_buytaskmx_storageid[child_row] = ll_storageid
-
- dw_child.Object.mtrlid[child_row] = s_buy.mtrlid[i]
- dw_child.Object.u_mtrldef_mtrlcode [child_row] = s_buy.mtrlcode[i]
- dw_child.Object.mtrlname[child_row] = s_buy.mtrlname[i]
- dw_child.Object.u_mtrldef_mtrlmode[child_row] = s_buy.mtrlmode[i]
-
- dw_child.Object.u_mtrldef_unit[child_row] = s_buy.unit[i]
- dw_child.Object.qty[child_row] = s_buy.qty[i]
-
- dw_child.Object.u_buytaskmx_unit[child_row] = s_buy.unit[i]
- dw_child.Object.u_buytaskmx_rate[child_row] = s_buy.rate[i]
- dw_child.Object.u_buytaskmx_uqty[child_row] = s_buy.uqty[i]
-
- dw_child.Object.u_mtrldef_zxmtrlmode[child_row] = s_buy.zxmtrlmode[i]
- dw_child.Object.u_mtrldef_mtrlsectype[child_row] = s_buy.mtrlsectype[i]
-
- dw_child.Object.u_buytaskmx_status[child_row] = s_buy.status[i]
- dw_child.Object.u_buytaskmx_woodcode[child_row] = s_buy.woodcode[i]
- dw_child.Object.u_buytaskmx_pcode[child_row] = s_buy.pcode[i]
-
- IF f_find_mtrl_by_id(s_buy.mtrlid[i],arg_s_mtrldef) = 0 THEN
- li_statusflag = 0
- li_woodcodeflag = 0
- li_pcodeflag = 0
- ELSE
- li_statusflag = arg_s_mtrldef.statusflag[1]
- li_pcodeflag = arg_s_mtrldef.pcodeflag[1]
- li_woodcodeflag = arg_s_mtrldef.woodcodeflag[1]
- END IF
-
- dw_child.Object.u_mtrldef_statusflag[child_row] = li_statusflag
- dw_child.Object.u_mtrldef_woodcodeflag[child_row] = li_woodcodeflag
- dw_child.Object.u_mtrldef_pcodeflag[child_row] = li_pcodeflag
-
- wf_get_price(child_row)
-
- wf_get_sptmtrlname(child_row)
-
- END IF
-
- NEXT
- dw_child.SetColumn('u_buytaskmx_uqty')
- dw_child.SetFocus()
- This.TriggerEvent('ue_allowedit')
- RETURN rslt
- end function
- public subroutine wf_enamt_facechg ();IF ii_enamt_notax_edit = 0 THEN //录入不含税单价 为 false
- dw_child.Modify('u_buytaskmx_uprice_notax.protect = 1~t u_buytaskmx_uprice_notax.Color = "0~trgb(0,0,0)"')
- dw_child.Modify('u_buytaskmx_uprice_notax_t.Color = "0~trgb(0,0,0)"')
-
-
- ELSEIF ii_enamt_notax_edit = 1 THEN
-
- dw_child.Modify('u_buytaskmx_uprice_notax.protect = 0~t u_buytaskmx_uprice_notax.Color = "0~trgb(0,0,255)"')
- dw_child.Modify('u_buytaskmx_uprice_notax_t.Color = "0~trgb(0,0,255)"')
-
- END IF
- end subroutine
- public function integer wf_check_qtyandaddqty (ref string arg_msg);Long i
- Int rslt = 1
- Long lk_mtrlid,lk_ifcheckaddqty
- String ls_strcheckaddqty,ls_mtrlmode
- Decimal dec_qty,dec_addqty,dec_danpackqty,dec_packqty,dec_rebate
- String ls_status,ls_woodcode,ls_pcode,ls_mtrlsectype,ls_zxmtrlmode
- Long num
- s_cmpl_qty s_cmpl
- s_cmpl.addvalue = 1
- String ls_msg
- dw_child.AcceptText()
- FOR i = 1 To dw_child.RowCount()
- lk_mtrlid = dw_child.Object.mtrlid[i]
- dec_qty = dw_child.Object.u_buyTaskMx_uqty[i]
- dec_addqty = dw_child.Object.u_buyTaskMx_addqty[i]
- ls_status = dw_child.Object.u_buyTaskMx_status[i]
- ls_woodcode = dw_child.Object.u_buyTaskMx_woodcode[i]
- ls_pcode = dw_child.Object.u_buyTaskMx_pcode[i]
- ls_mtrlsectype = dw_child.Object.u_mtrldef_mtrlsectype[i]
- ls_zxmtrlmode = dw_child.Object.u_mtrldef_zxmtrlmode[i]
- ls_mtrlmode = dw_child.Object.u_mtrldef_mtrlmode[i]
- dec_rebate = dw_child.Object.u_buytaskmx_rebate[i]
- dec_danpackqty=0
- dec_packqty=0
-
- SELECT ifcheckaddqty,strcheckaddqty,strcheck_digit Into :lk_ifcheckaddqty,:ls_strcheckaddqty,:num From u_mtrldef Where mtrlid = :lk_mtrlid;
-
- s_cmpl.formula = ls_strcheckaddqty
- s_cmpl.status = ls_status
- s_cmpl.woodcode = ls_woodcode
- s_cmpl.pcode = ls_pcode
- s_cmpl.mtrlsectype = ls_mtrlsectype
- s_cmpl.zxmtrlmode = ls_zxmtrlmode
- s_cmpl.addqty = dec_addqty
- s_cmpl.num = num
- s_cmpl.oldqty = dec_qty
- s_cmpl.mtrlsectype = ls_mtrlsectype
- s_cmpl.zxmtrlmode = ls_zxmtrlmode
- s_cmpl.packqty = dec_packqty
- s_cmpl.rebate = dec_rebate
-
- //如果有填写数量 则 只检查数量和辅数的关系
- Decimal dec_tmp
- IF lk_mtrlid > 0 And dec_qty <> 0 THEN
- IF f_cmpl_qty_check(s_cmpl,dec_tmp,ls_msg) <> TRUE THEN
- rslt = 0
- arg_msg = '根据物料资料 数量和辅数的关系定义,第' + String(i) + '行不符合该项定义,公式是 ' + ls_strcheckaddqty
- GOTO ext
- END IF
- END IF
-
- //如果没有填写数量 则 由辅数计算出数量
- IF lk_mtrlid > 0 And dec_qty = 0 THEN
- IF f_cmpl_qty(s_cmpl,dec_tmp,ls_msg) = 0 THEN
- rslt = 0
- arg_msg += '根据物料资料 数量和辅数的关系定义,第' + String(i) + '行由辅数计算出数量为0,请检查资料定义公式是 ' + ls_strcheckaddqty
- goto ext
- END IF
- dw_child.Object.u_buyTaskMx_uqty[i] = dec_tmp
- END IF
- NEXT
- dw_child.AcceptText()
- ext:
- RETURN rslt
- end function
- on w_buytask.create
- int iCurrent
- call super::create
- this.ddlb_scid=create ddlb_scid
- this.st_2=create st_2
- this.st_3=create st_3
- this.ddlb_status=create ddlb_status
- this.cbx_enamt_edit=create cbx_enamt_edit
- this.cbx_enamt_notax_edit=create cbx_enamt_notax_edit
- iCurrent=UpperBound(this.Control)
- this.Control[iCurrent+1]=this.ddlb_scid
- this.Control[iCurrent+2]=this.st_2
- this.Control[iCurrent+3]=this.st_3
- this.Control[iCurrent+4]=this.ddlb_status
- this.Control[iCurrent+5]=this.cbx_enamt_edit
- this.Control[iCurrent+6]=this.cbx_enamt_notax_edit
- end on
- on w_buytask.destroy
- call super::destroy
- destroy(this.ddlb_scid)
- destroy(this.st_2)
- destroy(this.st_3)
- destroy(this.ddlb_status)
- destroy(this.cbx_enamt_edit)
- destroy(this.cbx_enamt_notax_edit)
- end on
- event retrieve_pageretr;
- Boolean cb_nextpage_enabled,cb_retrieveall_enabled
- Boolean cb_func_enabled,cb_retrieve_enabled
- cb_nextpage_enabled = cb_nextpage.Enabled
- cb_retrieveall_enabled = cb_retrieveall.Enabled
- cb_func_enabled = cb_func.Enabled
- cb_nextpage.Enabled = FALSE
- cb_retrieveall.Enabled = FALSE
- cb_func.Enabled = FALSE
- dw_uc.Retrieve() //dw_uc的dw改左select top 0 并肯不带参数
- dw_pageretr.Retrieve(cur_status,cur_scid,sys_user_spttype)
- IF dw_pageretr.RowCount() > 0 THEN
- dw_pageretr.SetRow(1)
- dw_pageretr.TriggerEvent(RowFocusChanged!)
- END IF
- THIS.TriggerEvent('retrieve_childdw')
- //THIS.TriggerEvent('retrieve_fjnum') //改成单据功能手动刷新
- cb_nextpage.Enabled = cb_nextpage_enabled
- cb_retrieveall.Enabled = cb_retrieveall_enabled
- cb_func.Enabled = cb_func_enabled
- end event
- event open;call super::open;uc_column_int = 11 //uc dw前5列可以编辑
- child_column_int = 23 //子 dw前3列可以编辑
- obj_task = CREATE uo_buytask
- obj_task.commit_transaction = sqlca
- uo_sptprice = create uo_spt_price
- uo_fieb = Create uo_ljfieb
- uo_fieb.commit_transaction = sys_email_sqlca
- IF s_tran.d_long = 1 AND UpperBound(s_tran.arr_long) > 0 THEN
- cur_scid = s_tran.c_long
- Int li_item
- li_item = ddlb_scid.FindItem(s_tran.d_string,0)
- IF li_item > 0 THEN
- ddlb_scid.SelectItem(li_item)
- END IF
- String arg_msg
- cb_add.TriggerEvent(Clicked!)
- wf_autoaddmx(s_tran.arr_long[],s_tran.arr_dec[])
- END IF
- ds_copy = CREATE datastore
- ds_copy.DataObject = dw_child.dataobject
- ds_copy.SetTransObject(sqlca)
- s_hide_col s_col
- s_col.col_1 = 'u_buytaskmx_uprice'
- s_col.col_2 = 'u_buytaskmx_rebate'
- s_col.col_3 = 'u_buytaskmx_uamt'
- s_col.col_4 = 'u_buytaskmx_fprice'
- s_col.col_5 = 'u_buytaskmx_tax'
- s_col.col_6 = 'u_buytaskmx_uamt_tax'
- s_col.col_7 = 'u_buytaskmx_bsamt'
- s_col.col_8 = 'u_buytaskmx_bsamt_tax'
- s_col.col_9 = 'u_buytaskmx_dftsptprice'
- s_col.col_10 = 'u_buytaskmx_uprice_notax'
- s_col.col_11 = 'fprice_notax'
- s_col.col_12 = 'uamt_notax'
- f_hide_col(121,dw_child,s_col)
- s_hide_col s_col_mtrlsectype
- s_col_mtrlsectype.col_1 = 'u_mtrldef_mtrlsectype'
- f_hide_col(1308,dw_child,s_col_mtrlsectype)
- s_hide_col s_col_zxmtrlmode
- s_col_zxmtrlmode.col_1 = 'u_mtrldef_zxmtrlmode'
- f_hide_col(1309,dw_child,s_col_zxmtrlmode)
- s_hide_col s_col_dftsptprice
- s_col_zxmtrlmode.col_1 = 'u_buytaskmx_dftsptprice'
- f_hide_col(1462,dw_child,s_col_zxmtrlmode)
- end event
- event ue_f9;
- IF Not dw_edit_mode THEN RETURN
- Long uc_row, i
- uc_row = dw_uc.GetRow()
- IF uc_row = 0 THEN
- MessageBox('提示','请选定订单!', Information!, OK! )
- RETURN
- END IF
- dw_uc.AcceptText()
- IF Not IsValid(W_spt_edit) THEN
- s_edit_index_tran s_ch_tran //传递参数使用
- s_ch_tran.if_retrieve_all = False //是否一次RETRIEVE所有行
- s_ch_tran.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式
- s_ch_tran.arg_pkid = 0 //目标定位PKID (备用)
- //查询列(物料编码)部分内容,用于初步筛选
- s_ch_tran.arg_string_code = Upper(Trim(dw_uc.Object.sptcode[dw_uc.GetRow()]))
-
- IF sys_spt_hideinfo = 0 THEN
- OpenWithParm(W_spt_edit,s_ch_tran) //调用
- ELSE
- OpenWithParm(W_spt_ch,s_ch_tran) //调用
- END IF
-
- S_spt S_INSCUST
- S_INSCUST = Message.PowerObjectParm //接受返回结构
-
- IF S_INSCUST.sptid > 0 THEN //正常返回值则可以取以下值
-
- // //重置dw_child
- // wf_change_sptid(S_INSCUST.sptid)
-
- dw_uc.SetRedraw(False)
- dw_uc.Object.sptid[uc_row] = S_INSCUST.sptid
- dw_uc.Object.u_spt_name[uc_row] = S_INSCUST.Name
- dw_uc.Object.sptcode[uc_row] = S_INSCUST.sptcode
-
- IF S_INSCUST.dftmoneyid > 0 THEN
- dw_uc.Object.u_buytask_moneyid[uc_row] = S_INSCUST.dftmoneyid
- dw_uc.Object.u_buytask_mrate[dw_uc.GetRow()] = f_get_mrate(S_INSCUST.dftmoneyid)
- END IF
-
- IF S_INSCUST.dftbanktypeid > 0 THEN
- dw_uc.Object.u_buytask_banktypeid[uc_row] = S_INSCUST.dftbanktypeid
- END IF
-
- FOR i = 1 To dw_child.RowCount( )
- wf_get_price(i)
- wf_get_sptmtrlname(i)
- NEXT
-
- dw_uc.SetColumn("u_buytask_relcode")
- dw_uc.SetRedraw(True)
- END IF
- END IF
- end event
- event ue_f8;call super::ue_f8;//用于选择明细内容,被F8[默认]\dw_child.doubleclicked调用
- IF Not dw_edit_mode THEN RETURN
- Long child_row
- Long ls_sptid,ls_mtrlid
- Long ll_storageid
- Decimal ls_price,ls_rebate,lde_rate,ld_tax
- String arg_msg
- String ls_sptmtrlname,ls_sptmtrlcode,ls_sptmtrlmode
- dw_uc.AcceptText()
- IF dw_uc.GetRow() = 0 THEN RETURN
- ls_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- IF IsNull(ls_sptid) Or ls_sptid = 0 THEN
- This.TriggerEvent("ue_f9")
- ls_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- IF IsNull(ls_sptid) Or ls_sptid = 0 THEN
- MessageBox('提示','请选择供应商', Information!, OK! )
- RETURN
- END IF
- END IF
- child_row = dw_child.GetRow()
- ll_storageid = dw_child.Object.u_buytaskmx_storageid[child_row]
- IF ll_storageid = 0 THEN
- MessageBox('提示','请选择仓库', Information!, OK! )
- RETURN
- END IF
- IF Not IsValid(W_mtrldef_edit) THEN
- s_edit_index_tran s_tranf8 //传递参数使用
- s_tranf8.if_retrieve_all = False //是否一次RETRIEVE所有行
- s_tranf8.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式
- s_tranf8.arg_pkid = 0 //目标定位PKID (备用)
- s_tranf8.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选
- s_tranf8.if_select_all = True //多选
- s_tranf8.b_long = 2 //选采购
- s_tranf8.c_long = ll_storageid
- s_tranf8.d_long = ls_sptid
-
- Long chc = 1,ls_j
- IF dw_child.GetRow() > 0 THEN s_tranf8.arg_string_code = Trim(dw_child.Object.u_mtrldef_mtrlcode[dw_child.GetRow()])
- OpenWithParm(W_mtrldef_edit,s_tranf8) //调用
-
- s_mtrldef_array S_INSCUST
- S_INSCUST = Message.PowerObjectParm //接受返回结构
- FOR ls_j = 1 To UpperBound(S_INSCUST.mtrlid)
- IF S_INSCUST.mtrlid[ls_j] > 0 THEN //正常返回值则可以取以下值
-
- IF dw_child.GetRow() > 0 THEN
- IF dw_child.Object.mtrlid[child_row] <> 0 THEN
- child_row = dw_child.InsertRow (0)
- ELSE
- child_row = dw_child.GetRow()
- END IF
- ELSE
- child_row = dw_child.InsertRow (0)
- END IF
-
- IF child_row > 1 THEN
- dw_child.AcceptText()
- dw_child.Object.u_buytaskmx_storageid[child_row] = dw_child.Object.u_buytaskmx_storageid[child_row - 1]
- END IF
-
- dw_child.Object.mtrlid[child_row] = S_INSCUST.mtrlid[ls_j]
- dw_child.Object.u_mtrldef_mtrlcode [child_row] = S_INSCUST.mtrlcode[ls_j]
- dw_child.Object.mtrlname[child_row] = S_INSCUST.mtrlname[ls_j]
- dw_child.Object.u_mtrldef_mtrlmode[child_row] = S_INSCUST.mtrlmode[ls_j]
- dw_child.Object.u_mtrldef_unit[child_row] = S_INSCUST.unit[ls_j]
- dw_child.Object.qty[child_row] = 0
-
- dw_child.Object.u_mtrldef_zxmtrlmode[child_row] = S_INSCUST.zxmtrlmode[ls_j]
- dw_child.Object.u_mtrldef_mtrlsectype[child_row] = S_INSCUST.mtrlsectype[ls_j]
- dw_child.Object.u_mtrldef_mtrltype[child_row] = S_INSCUST.mtrltype[ls_j]
-
- dw_child.Object.u_mtrldef_statusflag[child_row] = S_INSCUST.statusflag[ls_j]
- dw_child.Object.u_mtrldef_woodcodeflag[child_row] = S_INSCUST.woodcodeflag[ls_j]
- dw_child.Object.u_mtrldef_pcodeflag[child_row] = S_INSCUST.pcodeflag[ls_j]
-
- dw_child.Object.u_buytaskmx_status[child_row] = S_INSCUST.status[ls_j]
- dw_child.Object.u_buytaskmx_woodcode[child_row] = S_INSCUST.woodcode[ls_j]
- dw_child.Object.u_buytaskmx_pcode[child_row] = S_INSCUST.pcode[ls_j]
-
- dw_child.Object.u_buytaskmx_unit[child_row] = S_INSCUST.unit[ls_j]
-
- dw_child.Object.u_mtrldef_barcode[child_row] = S_INSCUST.barcode[ls_j]
- dw_child.Object.u_mtrldef_mtrlengname[child_row] = S_INSCUST.mtrlengname[ls_j]
-
- ls_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]//供应商物料别名
- ls_mtrlid =S_INSCUST.mtrlid[ls_j]
- Select isnull(sptmtrlcode,''), isnull(sptmtrlname,''), isnull(sptmtrlmode,'')
- Into :ls_sptmtrlcode, :ls_sptmtrlname, :ls_sptmtrlmode
- From u_sptmtrlname
- Where mtrlid= :ls_mtrlid and sptid= :ls_sptid ;
-
- dw_child.Object.u_sptmtrlname_sptmtrlname[child_row] = ls_sptmtrlname
- dw_child.Object.u_sptmtrlname_sptmtrlcode[child_row] = ls_sptmtrlcode
- dw_child.Object.u_sptmtrlname_sptmtrlmode[child_row] =ls_sptmtrlmode
-
- //3属性默认值
- IF Len(S_INSCUST.status_default[ls_j]) > 0 THEN
- dw_child.Object.u_buytaskmx_status[child_row] = Trim(S_INSCUST.status_default[ls_j])
- END IF
-
-
- IF Len(S_INSCUST.woodcode_default[ls_j]) > 0 THEN
- dw_child.Object.u_buytaskmx_woodcode[child_row] = Trim(S_INSCUST.woodcode_default[ls_j])
- END IF
-
-
- IF Len(S_INSCUST.pcode_default[ls_j]) > 0 THEN
- dw_child.Object.u_buytaskmx_pcode[child_row] = Trim(S_INSCUST.pcode_default[ls_j])
- END IF
-
-
-
-
-
-
-
- IF f_find_tax(ls_sptid,'u_spt',ld_tax) = 0 THEN
- ld_tax = 0
- ELSE
- dw_child.Object.u_buytaskmx_tax[child_row] = ld_tax
- END IF
-
- f_find_unitrate(S_INSCUST.mtrlid[ls_j], S_INSCUST.unit[ls_j], lde_rate)
- dw_child.Object.u_buytaskmx_rate[child_row] = lde_rate
-
- wf_get_price(child_row)
- wf_get_sptmtrlname(child_row)
-
- END IF
-
- NEXT
- dw_child.SetColumn('u_buytaskmx_uqty')
- dw_child.SetFocus()
- This.TriggerEvent('ue_allowedit')
- END IF
- end event
- event refresh_interface;call super::refresh_interface;ddlb_status.Enabled = NOT dw_edit_mode
- cbx_enamt_edit.Enabled = NOT dw_edit_mode
- cbx_enamt_notax_edit.Enabled = Not dw_edit_mode
- wf_statusbtn_fc()
- IF dw_edit_mode THEN
- ddlb_scid.Enabled = FALSE
- ELSE
- IF sys_scid > 0 THEN
- ddlb_scid.Enabled = FALSE
- ELSE
- ddlb_scid.Enabled = TRUE
- END IF
- END IF
- IF ii_enamt_edit = 0 THEN
- dw_child.Modify('u_buytaskmx_uamt.protect = 1~t u_buytaskmx_uamt.Color = 0')
- dw_child.Modify('u_buytaskmx_uamt_t.Color = 0')
- ELSE
- dw_child.Modify('u_buytaskmx_uamt.protect = 0~t u_buytaskmx_uamt.Color = "0~trgb(0,0,255)"')
- dw_child.Modify('u_buytaskmx_uamt_t.Color = "0~trgb(0,0,255)"')
- END IF
- end event
- event retrieve_childdw;call super::retrieve_childdw;Long row,uc_relid,ll_scid
- row = dw_pageretr.GetRow()
- IF row > 0 THEN
- ll_scid = dw_pageretr.Object.u_buytask_scid[row]
- uc_relid = dw_pageretr.Object.taskid[row]
- dw_child.SetRedraw (False)
- dw_child.Retrieve(uc_relid,ll_scid)
- dw_child.SetRedraw (True)
- ELSE
- dw_child.Reset()
- END IF
- end event
- event close;destroy obj_task
- destroy uo_sptprice
- //f_SetProfileString(sys_empid, "buytask", "status", string(cur_status))
- wf_del_tempfilepathname()
- end event
- event ue_usual_query_filt;call super::ue_usual_query_filt;string obj_expr=''
- if trim(sle_usual_query.text)<>'' then
- IF POS(trim(sle_usual_query.text),'%')=0 THEN
- obj_expr=obj_expr+'( taskcode LIKE "%'+trim(sle_usual_query.text)+'%" )'
- ELSE
- obj_expr=obj_expr+'( taskcode LIKE "'+trim(sle_usual_query.text)+'" )'
- END IF
- end if
- dw_pageretr.setfilter(obj_expr)
- dw_pageretr.SetRedraw(False)
- dw_pageretr.filter()
- if dw_pageretr.rowcount()>=1 then
- dw_pageretr.selectrow(0,false)
- dw_pageretr.selectrow(1,true)
- dw_pageretr.SetRow(1)
- dw_pageretr.triggerevent(rowfocuschanged!)
- end if
- dw_pageretr.SetRedraw(TRUE)
- end event
- event ue_usual_query_retr;call super::ue_usual_query_retr;string ls_querystrpart=''
- ls_newselect=lower(ori_oldselect)
- if trim(sle_usual_query.text)<>'' then
- if pos(trim(sle_usual_query.text),'%')=0 then
- ls_querystrpart="(u_buytask.taskcode like '%"+trim(sle_usual_query.text)+"%')"
- else
- ls_querystrpart="(u_buytask.taskcode like '"+trim(sle_usual_query.text)+"')"
- end if
- if Pos(ls_newselect," where ") <> 0 then
- ls_newselect=ls_newselect+" AND ("+ls_querystrpart+')'
- else
- ls_newselect=ls_newselect+" where ("+ls_querystrpart+')'
- end if
- end if
- wf_retrieveuc(dw_pageretr,ls_newselect,1)
- this.triggerevent('retrieve_pageretr')
- end event
- event ue_viewprint;call super::ue_viewprint;IF dw_pageretr.RowCount() = 0 THEN
- MessageBox('提示','没有可打印的单据!', Information!, OK! )
- RETURN
- END IF
- dw_pageretr.accepttext()
- IF sys_option_auditprint_buy = 1 THEN
- IF dw_pageretr.Object.u_buytask_status[dw_pageretr.GetRow()] = 0 THEN
- MessageBox('提示','目标单据还未审核,不能打印!', Information!, OK! )
- RETURN
- END IF
- END IF
- IF NOT f_power_ind(95) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- Long LS_ROW
- LS_ROW = dw_pageretr.GetRow()
- IF LS_ROW <= 0 THEN
- MessageBox('提示','没有打印目标单据!', Information!, OK! )
- RETURN
- END IF
- S_print_MSG LS_PRMSG
- LS_PRMSG.ifpic = ifpic
- IF ls_newname <> '' THEN
- IF li_auditprint = 1 THEN
- IF dw_pageretr.Object.u_buytask_status[dw_pageretr.GetRow()] = 0 THEN
- MessageBox('提示','目标单据还未审核,不能打印!', Information!, OK! )
- RETURN
- END IF
- END IF
- LS_PRMSG.obj_dwNAME = ls_newname
- ELSE
- LS_PRMSG.obj_dwNAME = 'dw_rp_buytask_print'
- END IF
- LS_PRMSG.TAG_TEXT = '采购订单'
- LS_PRMSG.FILTER_STRING = ''
- LS_PRMSG.retr_pram_falg = 15
- LS_PRMSG.PAGECH_FLAG = 0
- LS_PRMSG.retr_scid = cur_scid
- LS_PRMSG.retr_pramnmb = dw_pageretr.Object.taskid[LS_ROW]
- LS_PRMSG.rowcnt = dw_child.RowCount()
- IF ifpic = 1 THEN
- String ls_msg
- IF wf_print_retrievedata(LS_PRMSG.s_pic,ls_msg) = 0 THEN
- MessageBox('提示','下载图片失败!',information!,OK!)
- RETURN
- END IF
- END IF
- OpenWithParm(w_publ_preview,LS_PRMSG)
- IF ifpic = 1 THEN
- Long li
- FOR li = 1 TO UpperBound(LS_PRMSG.s_pic.path)
- IF Len(Trim(LS_PRMSG.s_pic.path[li])) > 0 THEN
- FileDelete(LS_PRMSG.s_pic.path[li])
- END IF
- NEXT
- END IF
- //**更新打印次料
- String arg_msg
- printnum = Message.DoubleParm
- f_update_printnum('u_buytask',printnum,cur_scid,dw_pageretr.Object.taskid[LS_ROW],'','',arg_msg,TRUE)
- string ls_taskcode
- ls_taskcode = dw_pageretr.Object.taskcode[dw_pageretr.GetRow()]
- IF f_billevent_trigger (401, 1, ls_taskcode, arg_msg) = 0 THEN
- MessageBox('Error',arg_msg)
- END IF
- end event
- event ue_print;call super::ue_print;//--直接打印
- IF dw_pageretr.RowCount() = 0 THEN
- MessageBox('提示','没有可打印的单据!', Information!, OK! )
- RETURN
- END IF
- IF sys_option_auditprint_buy = 1 THEN
- IF dw_pageretr.Object.u_buytask_status[dw_pageretr.GetRow()] = 0 THEN
- MessageBox('提示','目标单据还未审核,不能打印!', Information!, OK! )
- RETURN
- END IF
- END IF
- IF NOT f_power_ind(95) THEN
- MessageBox(publ_operator,sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- uo_print_preview uo_print
- S_print_MSG LS_PRMSG
- LS_PRMSG.ifpic = ifpic
- IF MessageBox ("询问","是否确定要打印当前单据吗?",Question!,YesNO! ) = 2 THEN RETURN
- LS_PRMSG.retr_pram_falg = 15
- IF ls_newname <> '' THEN
-
- IF li_auditprint = 1 THEN
- IF dw_pageretr.Object.u_buytask_status[dw_pageretr.GetRow()] = 0 THEN
- MessageBox('提示','目标单据还未审核,不能打印!', Information!, OK! )
- RETURN
- END IF
- END IF
-
- LS_PRMSG.obj_dwNAME = ls_newname
- ELSE
- LS_PRMSG.obj_dwNAME = 'dw_rp_buytask_print'
- END IF
- LS_PRMSG.TAG_TEXT = '采购订单'
- LS_PRMSG.FILTER_STRING = ''
- LS_PRMSG.PAGECH_FLAG = 0
- LS_PRMSG.retr_scid = cur_scid
- LS_PRMSG.retr_pramnmb = dw_pageretr.Object.taskid[dw_pageretr.GetRow()]
- LS_PRMSG.rowcnt = dw_child.RowCount()
- IF ifpic = 1 THEN
- String ls_msg
- IF wf_print_retrievedata(LS_PRMSG.s_pic,ls_msg) = 0 THEN
- MessageBox('提示','下载图片失败!',information!,OK!)
- RETURN
- END IF
- END IF
- uo_print.FACT_PRINT_MSG = LS_PRMSG
- String arg_msg
- IF uo_print.uof_print_begin(arg_msg) = 0 THEN
- MessageBox("提示",arg_msg, Information!, OK! )
- RETURN
- END IF
- uo_print.ds_print()
- IF ifpic = 1 THEN
- Long li
- FOR li = 1 TO UpperBound(LS_PRMSG.s_pic.path)
- IF Len(Trim(LS_PRMSG.s_pic.path[li])) > 0 THEN
- FileDelete(LS_PRMSG.s_pic.path[li])
- END IF
- NEXT
- END IF
- //**更新打印次料
- f_update_printnum('u_buytask',1,cur_scid,dw_pageretr.Object.taskid[dw_pageretr.GetRow()],'','',arg_msg,TRUE)
- string ls_taskcode
- ls_taskcode = dw_pageretr.Object.taskcode[dw_pageretr.GetRow()]
- IF f_billevent_trigger (401, 1, ls_taskcode, arg_msg) = 0 THEN
- MessageBox('Error',arg_msg)
- END IF
- end event
- event ue_f10;call super::ue_f10;IF NOT IsValid(w_unit_ch) THEN
- IF dw_child.GetRow() < 1 THEN RETURN
- long child_row
- Long ll_mtrlid
-
- child_row = dw_child.GetRow()
- ll_mtrlid = dw_child.Object.mtrlid[child_row]
-
- OpenWithParm(w_unit_ch,ll_mtrlid)
- s_unit s_inscust
- s_inscust = Message.PowerObjectParm //接受返回结构
-
- IF s_inscust.unit <> '' THEN
-
- dw_child.Object.u_buytaskmx_unit[child_row] = s_inscust.unit
- dw_child.Object.u_buytaskmx_rate[child_row] = s_inscust.rate
-
- wf_get_price(child_row)
- END IF
- END IF
- end event
- event ue_addzy;call super::ue_addzy;IF dw_edit_mode THEN
- MessageBox('提示',"编辑状态下不可以使用!", Information!, OK! )
- RETURN
- END IF
- IF NOT f_power_ind(777) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- String arg_msg = '',LS_STR
- Long uc_row
- s_inputbox S_SREU
- uc_row = dw_pageretr.GetRow()
- IF uc_row <= 0 THEN
- MessageBox('提示','请选定当前目标订单!', Information!, OK! )
- RETURN
- END IF
- S_SREU.Title = '请输入要补充到备注的内容'
- S_SREU.OLD_TEXT = ''
- OpenWithParm(w_inputbox,S_SREU)
- LS_STR = Message.StringParm
- IF Trim(LS_STR) = '' OR IsNull(LS_STR) THEN RETURN
- IF obj_task.add_dscrp(dw_pageretr.Object.u_buytask_scid[uc_row],dw_pageretr.Object.taskid[uc_row],LS_STR,arg_msg,TRUE) = 0 THEN
- MessageBox('Error!',arg_msg)
- RETURN
- ELSE
- MessageBox('提示','添加备注操作成功!', Information!, OK! )
- wf_refresh_curuc(dw_pageretr.Object.u_buytask_scid[uc_row],dw_pageretr.Object.taskid[uc_row])
- END IF
- end event
- event ue_f7;call super::ue_f7;//选择销售订单明细内容,被F7[默认]\dw_child.doubleclicked调用
- IF Not dw_edit_mode THEN RETURN
- Long child_row
- Long ll_sptid,ls_mtrlid
- Decimal ls_price,ls_rebate,lde_rate,ld_tax
- Int li_statusflag,li_woodcodeflag,li_pcodeflag
- String ls_sptmtrlname,ls_sptmtrlcode,ls_sptmtrlmode
- String arg_msg
- s_mtrldef_array arg_s_mtrldef
- child_row = dw_child.GetRow()
- Long ll_storageid
- dw_uc.AcceptText()
- IF dw_uc.GetRow() = 0 THEN RETURN
- ll_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- //IF IsNull(ll_sptid) Or ll_sptid = 0 THEN
- // This.TriggerEvent("ue_f9")
- // ll_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- // IF IsNull(ll_sptid) Or ll_sptid = 0 THEN
- // MessageBox('提示','请选择供应商', Information!, OK! )
- // RETURN
- // END IF
- //END IF
- ll_storageid = dw_child.Object.u_buytaskmx_storageid[child_row]
- IF ll_storageid = 0 THEN
- MessageBox('提示','请选择仓库', Information!, OK! )
- RETURN
- END IF
- IF Not IsValid(w_buytask_buymx_ch) THEN
- s_edit_index_tran s_tranf8 //传递参数使用
- s_tranf8.if_retrieve_all = False //是否一次RETRIEVE所有行
- s_tranf8.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式
- s_tranf8.arg_pkid = 0 //目标定位PKID (备用)
- s_tranf8.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选
- s_tranf8.if_select_all = True //多选
- s_tranf8.b_long = 2 //选采购
- s_tranf8.c_long = ll_storageid
- s_tranf8.e_long = cur_scid
- s_tranf8.d_long = ll_sptid
-
- Long chc = 1,ls_j
- IF dw_child.GetRow() > 0 THEN s_tranf8.arg_string_code = Trim(dw_child.Object.u_mtrldef_mtrlcode[dw_child.GetRow()])
- OpenWithParm(w_buytask_buymx_ch,s_tranf8) //调用
-
- s_mtrldef_buytask_array S_INSCUST
- S_INSCUST = Message.PowerObjectParm //接受返回结构
- FOR ls_j = 1 To UpperBound(S_INSCUST.mtrlid)
- IF S_INSCUST.mtrlid[ls_j] > 0 THEN //正常返回值则可以取以下值
-
- IF dw_child.GetRow() > 0 THEN
- IF dw_child.Object.mtrlid[child_row] <> 0 THEN
- child_row = dw_child.InsertRow (0)
- ELSE
- child_row = dw_child.GetRow()
- END IF
- ELSE
- child_row = dw_child.InsertRow (0)
- END IF
-
- IF child_row > 1 THEN
- dw_child.AcceptText()
- dw_child.Object.u_buytaskmx_storageid[child_row] = dw_child.Object.u_buytaskmx_storageid[child_row - 1]
- END IF
-
- dw_child.Object.mtrlid[child_row] = S_INSCUST.mtrlid[ls_j]
- dw_child.Object.u_mtrldef_mtrlcode [child_row] = S_INSCUST.mtrlcode[ls_j]
- dw_child.Object.mtrlname[child_row] = S_INSCUST.mtrlname[ls_j]
- dw_child.Object.u_mtrldef_mtrlmode[child_row] = S_INSCUST.mtrlmode[ls_j]
- dw_child.Object.u_mtrldef_mtrltype[child_row] = S_INSCUST.mtrltype[ls_j]
- dw_child.Object.u_mtrldef_p_mtrlname[child_row] = S_INSCUST.mtrlname[ls_j]
- dw_child.Object.u_mtrldef_p_mtrlmode[child_row] = S_INSCUST.mtrlmode[ls_j]
-
- dw_child.Object.u_mtrldef_unit[child_row] = S_INSCUST.unit[ls_j]
- dw_child.Object.qty[child_row] = S_INSCUST.qty[ls_j]
- dw_child.Object.u_buytaskmx_addqty[child_row] = S_INSCUST.addqty[ls_j]
-
- dw_child.Object.u_buytaskmx_rate[child_row] = 1
- dw_child.Object.u_buytaskmx_unit[child_row] = S_INSCUST.unit[ls_j]
- dw_child.Object.u_buytaskmx_uqty[child_row] = S_INSCUST.qty[ls_j]
-
- dw_child.Object.u_buytaskmx_relcode[child_row] = S_INSCUST.relcode[ls_j]
-
- dw_child.Object.u_buytaskmx_relid[child_row] = S_INSCUST.relid[ls_j]
- dw_child.Object.u_buytaskmx_relprintid[child_row] = S_INSCUST.relPrintid[ls_j]
-
- dw_child.Object.u_mtrldef_zxmtrlmode[child_row] = S_INSCUST.zxmtrlmode[ls_j]
- dw_child.Object.u_mtrldef_mtrlsectype[child_row] = S_INSCUST.mtrlsectype[ls_j]
-
- dw_child.Object.u_buytaskmx_status[child_row] = S_INSCUST.status[ls_j]
- dw_child.Object.u_buytaskmx_woodcode[child_row] = S_INSCUST.woodcode[ls_j]
- dw_child.Object.u_buytaskmx_pcode[child_row] = S_INSCUST.pcode[ls_j]
- dw_child.Object.dscrp[child_row] = S_INSCUST.dscrp[ls_j]
- dw_child.Object.u_saletask_rel_rep[child_row] = S_INSCUST.rel_rep[ls_j]
- dw_child.Object.u_saletask_cus_address[child_row] = S_INSCUST.cus_address[ls_j]
- dw_child.Object.u_saletask_cus_tele[child_row] = S_INSCUST.cus_tele[ls_j]
- dw_child.Object.u_saletask_cus_tele1[child_row] = S_INSCUST.cus_tele1[ls_j]
- dw_child.Object.u_buytaskmx_unit[child_row] = S_INSCUST.unit[ls_j]
-
- dw_child.Object.u_buytaskmx_plancode[child_row] = S_INSCUST.plancode[ls_j]
-
- dw_child.Object.u_buytaskmx_requiredate[child_row] = S_INSCUST.requiredate[ls_j]
- dw_child.Object.u_buytaskmx_dscrp2[child_row] = S_INSCUST.dscrp2[ls_j]
-
- dw_child.Object.u_mtrldef_barcode[child_row] = S_INSCUST.barcode[ls_j]
- dw_child.Object.u_mtrldef_mtrlengname[child_row] = S_INSCUST.mtrlengname[ls_j]
-
- ll_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]//供应商物料别名
- ls_mtrlid =S_INSCUST.mtrlid[ls_j]
- Select isnull(sptmtrlcode,''), isnull(sptmtrlname,''), isnull(sptmtrlmode,'')
- Into :ls_sptmtrlcode, :ls_sptmtrlname, :ls_sptmtrlmode
- From u_sptmtrlname
- Where mtrlid= :ls_mtrlid and sptid= :ll_sptid ;
-
- dw_child.Object.u_sptmtrlname_sptmtrlname[child_row] = ls_sptmtrlname
- dw_child.Object.u_sptmtrlname_sptmtrlcode[child_row] = ls_sptmtrlcode
- dw_child.Object.u_sptmtrlname_sptmtrlmode[child_row] =ls_sptmtrlmode
-
-
- IF f_find_tax(ll_sptid,'u_spt',ld_tax) = 0 then
- ld_tax = 0
- ELSE
- dw_child.Object.u_buytaskmx_tax[child_row] = ld_tax
- END IF
-
- f_find_unitrate(S_INSCUST.mtrlid[ls_j], S_INSCUST.unit[ls_j], lde_rate)
- dw_child.Object.u_buytaskmx_rate[child_row] = lde_rate
-
- IF f_find_mtrl(S_INSCUST.mtrlcode[ls_j],-1,arg_s_mtrldef) = 0 THEN
- li_statusflag = 0
- li_woodcodeflag = 0
- li_pcodeflag = 0
- ELSE
- li_statusflag = arg_s_mtrldef.statusflag[1]
- li_pcodeflag = arg_s_mtrldef.pcodeflag[1]
- li_woodcodeflag = arg_s_mtrldef.woodcodeflag[1]
- END IF
-
- dw_child.Object.u_mtrldef_statusflag[child_row] = li_statusflag
- dw_child.Object.u_mtrldef_woodcodeflag[child_row] = li_woodcodeflag
- dw_child.Object.u_mtrldef_pcodeflag[child_row] = li_pcodeflag
-
- wf_get_price(child_row)
-
- wf_get_sptmtrlname(child_row)
- END IF
-
- NEXT
- dw_child.SetColumn('u_buytaskmx_uqty')
- dw_child.SetFocus()
- This.TriggerEvent('ue_allowedit')
- END IF
- end event
- event ue_modify;call super::ue_modify;//s_modify.mainwin = this
- end event
- event ue_rpt_print;call super::ue_rpt_print;IF dw_pageretr.RowCount() = 0 THEN
- MessageBox('提示','没有可打印的单据!', Information!, OK! )
- RETURN
- END IF
- IF sys_option_auditprint_buy = 1 THEN
- IF dw_pageretr.Object.u_buytask_status[dw_pageretr.GetRow()] <> 1 THEN
- MessageBox('NO','目标单据还未审核,不能打印!', Information!, OK! )
- RETURN
- END IF
- END IF
- IF NOT f_power_ind(95) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- Long row
- row = dw_pageretr.GetRow()
- IF row <= 0 THEN
- MessageBox('提示','没有打印目标单据!', Information!, OK! )
- RETURN
- END IF
- uo_rpt_print_preview uo_print
- S_rpt_print_MSG LS_PRMSG
- IF dw_pageretr.RowCount() = 0 THEN
- MessageBox('提示','没有可打印的单据!', Information!, OK! )
- RETURN
- END IF
- IF ls_rpname = '' THEN RETURN
- IF MessageBox ("询问","是否确定要打印当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN
- LS_PRMSG.retr_pram_falg = 15
- LS_PRMSG.TAG_TEXT = '采购订单'
- LS_PRMSG.rpname = ls_rpname
- LS_PRMSG.FILTER_STRING = ''
- LS_PRMSG.PAGECH_FLAG = 0
- LS_PRMSG.rpid = ls_msgprintid_rpt
- LS_PRMSG.retr_scid = dw_pageretr.Object.u_buytask_scid[dw_pageretr.GetRow()]
- LS_PRMSG.retr_pramnmb = dw_pageretr.Object.taskid[dw_pageretr.GetRow()]
- LS_PRMSG.rowcnt = dw_child.RowCount()
- uo_print.FACT_PRINT_MSG = LS_PRMSG
- String arg_msg
- IF uo_print.uof_print_begin(arg_msg) = 0 THEN
- MessageBox("提示",arg_msg, Information!, OK! )
- RETURN
- END IF
- uo_print.ds_print()
- //**更新打印次料
- printnum = Message.DoubleParm
- f_update_printnum('u_buytask',printnum,cur_scid,dw_pageretr.Object.taskid[row],'','',arg_msg,TRUE)
- end event
- event ue_rpt_viewprint;call super::ue_rpt_viewprint;IF dw_pageretr.RowCount() = 0 THEN
- MessageBox('提示','没有可打印的单据!', Information!, OK! )
- RETURN
- END IF
- IF sys_option_auditprint_buy = 1 THEN
- IF dw_pageretr.Object.u_buytask_status[dw_pageretr.GetRow()] <> 1 THEN
- MessageBox('提示','目标单据还未审核,不能打印!', Information!, OK! )
- RETURN
- END IF
- END IF
- IF NOT f_power_ind(95) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- Long row,uc_relid,ll_scid
- row = dw_pageretr.GetRow()
- IF row = 0 THEN
- MessageBox('提示','没有打印目标单据!')
- RETURN
- END IF
- IF ls_rpname = '' THEN RETURN
- s_rpt_print_msg s_print
- s_print.retr_pram_falg = 15
- s_print.rpid = ls_msgprintid_rpt
- s_print.retr_flag = TRUE
- s_print.tag_text = THIS.Title
- s_print.rpname = ls_rpname
- s_print.retr_scid = dw_pageretr.Object.u_buytask_scid[row]
- s_print.retr_pramnmb = dw_pageretr.Object.taskid[row]
- s_print.rowcnt = dw_child.RowCount()
- OpenWithParm(w_rpt_preview,s_print)
- //**更新打印次料
- String arg_msg
- printnum = Message.DoubleParm
- f_update_printnum('u_buytask',printnum,cur_scid,dw_pageretr.Object.taskid[row],'','',arg_msg,TRUE)
- end event
- event ue_f11;call super::ue_f11;//用于选择销售订单运算明细内容,被F7[默认]\dw_child.doubleclicked调用
- IF NOT dw_edit_mode THEN RETURN
- Long child_row
- Long ll_sptid,ls_mtrlid
- Decimal ls_price,ls_rebate,lde_rate,ld_tax
- Int li_statusflag,li_woodcodeflag,li_pcodeflag
- String arg_msg
- String ls_sptmtrlname,ls_sptmtrlcode,ls_sptmtrlmode
- s_mtrldef_array arg_s_mtrldef
- child_row = dw_child.GetRow()
- Long ll_storageid
- dw_uc.accepttext()
- if dw_uc.GetRow() = 0 then return
- ll_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- IF IsNull(ll_sptid) OR ll_sptid = 0 THEN
- THIS.TriggerEvent("ue_f9")
- ll_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- IF IsNull(ll_sptid) OR ll_sptid = 0 THEN
- MessageBox('提示','请选择供应商', Information!, OK! )
- RETURN
- END IF
- END IF
- ll_storageid = dw_child.Object.u_buytaskmx_storageid[child_row]
- IF ll_storageid = 0 THEN
- MessageBox('提示','请选择仓库', Information!, OK! )
- RETURN
- END IF
- IF NOT IsValid(w_buytask_buymx_ch2) THEN
- s_edit_index_tran s_tranf8 //传递参数使用
- s_tranf8.if_retrieve_all = local_retrieve_all //是否一次RETRIEVE所有行
- s_tranf8.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式
- s_tranf8.arg_pkid = 0 //目标定位PKID (备用)
- s_tranf8.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选
- s_tranf8.if_select_all = TRUE //多选
- s_tranf8.b_long = 2 //选采购
- s_tranf8.c_long = ll_storageid
- s_tranf8.e_long = cur_scid
- s_tranf8.d_long = ll_sptid
-
- Long chc = 1,ls_j
- IF dw_child.GetRow() > 0 THEN s_tranf8.arg_string_code = Trim(dw_child.Object.u_mtrldef_mtrlcode[dw_child.GetRow()])
- OpenWithParm(w_buytask_buymx_ch2,s_tranf8) //调用
-
- s_mtrldef_buytask_array S_INSCUST
- S_INSCUST = Message.PowerObjectParm //接受返回结构
- FOR ls_j = 1 TO UpperBound(S_INSCUST.mtrlid)
- IF S_INSCUST.mtrlid[ls_j] > 0 THEN //正常返回值则可以取以下值
-
- IF dw_child.GetRow() > 0 THEN
- IF dw_child.Object.mtrlid[child_row] <> 0 THEN
- child_row = dw_child.InsertRow (0)
- ELSE
- child_row = dw_child.GetRow()
- END IF
- ELSE
- child_row = dw_child.InsertRow (0)
- END IF
-
- IF child_row > 1 THEN
- dw_child.AcceptText()
- dw_child.Object.u_buytaskmx_storageid[child_row] = dw_child.Object.u_buytaskmx_storageid[child_row - 1]
- END IF
-
- dw_child.Object.mtrlid[child_row] = S_INSCUST.mtrlid[ls_j]
- dw_child.Object.u_mtrldef_mtrlcode [child_row] = S_INSCUST.mtrlcode[ls_j]
- dw_child.Object.mtrlname[child_row] = S_INSCUST.mtrlname[ls_j]
- dw_child.Object.u_mtrldef_mtrlmode[child_row] = S_INSCUST.mtrlmode[ls_j]
- dw_child.Object.u_mtrldef_mtrltype[child_row] = S_INSCUST.mtrltype[ls_j]
-
- dw_child.Object.u_mtrldef_unit[child_row] = S_INSCUST.unit[ls_j]
- dw_child.Object.qty[child_row] = S_INSCUST.qty[ls_j]
- dw_child.Object.u_buytaskmx_addqty[child_row] = 0
-
- // f_find_unitrate(S_INSCUST.mtrlid[ls_j], S_INSCUST.unit[ls_j], lde_rate)
- // dw_child.Object.u_buytaskmx_rate[child_row] = lde_rate
- // dw_child.Object.u_buytaskmx_unit[child_row] = S_INSCUST.unit[ls_j]
-
- dw_child.Object.u_buytaskmx_rate[child_row] = 1
- dw_child.Object.u_buytaskmx_unit[child_row] = S_INSCUST.unit[ls_j]
- dw_child.Object.u_buytaskmx_uqty[child_row] = S_INSCUST.qty[ls_j]
-
-
- dw_child.Object.u_buytaskmx_relcode[child_row] = S_INSCUST.relcode[ls_j]
- dw_child.Object.u_buytaskmx_relid[child_row] = S_INSCUST.relid[ls_j]
- dw_child.Object.u_buytaskmx_relprintid[child_row] = S_INSCUST.relPrintid[ls_j]
- dw_child.Object.u_buytaskmx_relid2[child_row] = S_INSCUST.relid2[ls_j]
-
- dw_child.Object.u_mtrldef_zxmtrlmode[child_row] = S_INSCUST.zxmtrlmode[ls_j]
- dw_child.Object.u_mtrldef_mtrlsectype[child_row] = S_INSCUST.mtrlsectype[ls_j]
-
- dw_child.Object.u_buytaskmx_status[child_row] = S_INSCUST.status[ls_j]
- dw_child.Object.u_buytaskmx_woodcode[child_row] = S_INSCUST.woodcode[ls_j]
- dw_child.Object.u_buytaskmx_pcode[child_row] = S_INSCUST.pcode[ls_j]
-
- dw_child.Object.u_mtrldef_p_mtrlname[child_row] = S_INSCUST.proname[ls_j]
- dw_child.Object.u_mtrldef_p_mtrlmode[child_row] = S_INSCUST.promode[ls_j]
- dw_child.Object.u_saletask_rel_rep[child_row] = S_INSCUST.rel_rep[ls_j]
- dw_child.Object.u_saletask_cus_address[child_row] = S_INSCUST.cus_address[ls_j]
- dw_child.Object.u_saletask_cus_tele[child_row] = S_INSCUST.cus_tele[ls_j]
- dw_child.Object.u_saletask_cus_tele1[child_row] = S_INSCUST.cus_tele1[ls_j]
- dw_child.Object.u_buytaskmx_plancode[child_row] = S_INSCUST.plancode[ls_j]
-
-
- dw_child.Object.u_buytaskmx_dscrp2[child_row] = S_INSCUST.dscrp2[ls_j]
-
- ll_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]//供应商物料别名
- ls_mtrlid =S_INSCUST.mtrlid[ls_j]
- Select isnull(sptmtrlcode,''), isnull(sptmtrlname,''), isnull(sptmtrlmode,'')
- Into :ls_sptmtrlcode, :ls_sptmtrlname, :ls_sptmtrlmode
- From u_sptmtrlname
- Where mtrlid= :ls_mtrlid and sptid= :ll_sptid ;
- dw_child.Object.u_sptmtrlname_sptmtrlname[child_row] = ls_sptmtrlname
- dw_child.Object.u_sptmtrlname_sptmtrlcode[child_row] = ls_sptmtrlcode
- dw_child.Object.u_sptmtrlname_sptmtrlmode[child_row] =ls_sptmtrlmode
- IF f_find_tax(ll_sptid,'u_spt',ld_tax) = 0 then
- ld_tax = 0
- ELSE
- dw_child.Object.u_buytaskmx_tax[child_row] = ld_tax
- END IF
-
- IF f_find_mtrl(s_inscust.mtrlcode[ls_j],-1,arg_s_mtrldef) = 0 THEN
- li_statusflag = 0
- li_woodcodeflag = 0
- li_pcodeflag = 0
- ELSE
- li_statusflag = arg_s_mtrldef.statusflag[1]
- li_pcodeflag = arg_s_mtrldef.pcodeflag[1]
- li_woodcodeflag = arg_s_mtrldef.woodcodeflag[1]
- END IF
- dw_child.Object.u_mtrldef_statusflag[child_row] = li_statusflag
- dw_child.Object.u_mtrldef_woodcodeflag[child_row] = li_woodcodeflag
- dw_child.Object.u_mtrldef_pcodeflag[child_row] = li_pcodeflag
-
- wf_get_price(child_row)
- wf_get_sptmtrlname(child_row)
-
- END IF
-
- NEXT
- dw_child.SetFocus()
- dw_child.SetColumn('u_buytaskmx_uqty')
- THIS.TriggerEvent('ue_allowedit')
- END IF
- end event
- event ue_before_open;call super::ue_before_open;//IF sys_version_type = 2 THEN
- // dw_uc.DataObject = 'dw_buytask_input2'
- // dw_uc.SetTransObject(sqlca)
- //
- // dw_pageretr.DataObject = 'dw_buytask_index2'
- // dw_pageretr.SetTransObject(sqlca)
- //END IF
- //
- end event
- event ue_f12;call super::ue_f12;//用于选择询价单明细内容,被F7[默认]\dw_child.doubleclicked调用
- IF NOT dw_edit_mode THEN RETURN
- Long child_row
- Long ll_sptid,ls_mtrlid
- Decimal ls_price,ls_rebate,lde_rate,ld_tax
- Int li_statusflag,li_woodcodeflag,li_pcodeflag
- String arg_msg
- String ls_sptmtrlname,ls_sptmtrlcode,ls_sptmtrlmode
- s_mtrldef_array arg_s_mtrldef
- child_row = dw_child.GetRow()
- Long ll_storageid
- dw_uc.accepttext()
- if dw_uc.GetRow() = 0 then return
- ll_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- IF IsNull(ll_sptid) OR ll_sptid = 0 THEN
- THIS.TriggerEvent("ue_f9")
- ll_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- IF IsNull(ll_sptid) OR ll_sptid = 0 THEN
- MessageBox('提示','请选择供应商', Information!, OK! )
- RETURN
- END IF
- END IF
- ll_storageid = dw_child.Object.u_buytaskmx_storageid[child_row]
- IF ll_storageid = 0 THEN
- MessageBox('提示','请选择仓库', Information!, OK! )
- RETURN
- END IF
- IF NOT IsValid(w_spt_price_change_mx_ch) THEN
- s_edit_index_tran s_tranf8 //传递参数使用
- s_tranf8.if_retrieve_all = FALSE //是否一次RETRIEVE所有行
- s_tranf8.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式
- s_tranf8.arg_pkid = 0 //目标定位PKID (备用)
- s_tranf8.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选
- s_tranf8.if_select_all = TRUE //多选
- s_tranf8.c_long = ll_sptid
-
- Long chc = 1,ls_j
- IF dw_child.GetRow() > 0 THEN s_tranf8.arg_string_code = Trim(dw_child.Object.u_mtrldef_mtrlcode[dw_child.GetRow()])
- OpenWithParm(w_spt_price_change_mx_ch,s_tranf8) //调用
-
- s_mtrldef_buytask_array S_INSCUST
- S_INSCUST = Message.PowerObjectParm //接受返回结构
- FOR ls_j = 1 TO UpperBound(S_INSCUST.mtrlid)
- IF S_INSCUST.mtrlid[ls_j] > 0 THEN //正常返回值则可以取以下值
-
- IF dw_child.GetRow() > 0 THEN
- IF dw_child.Object.mtrlid[child_row] <> 0 THEN
- child_row = dw_child.InsertRow (0)
- ELSE
- child_row = dw_child.GetRow()
- END IF
- ELSE
- child_row = dw_child.InsertRow (0)
- END IF
-
- IF child_row > 1 THEN
- dw_child.AcceptText()
- dw_child.Object.u_buytaskmx_storageid[child_row] = dw_child.Object.u_buytaskmx_storageid[child_row - 1]
- END IF
-
- dw_child.Object.mtrlid[child_row] = S_INSCUST.mtrlid[ls_j]
- dw_child.Object.u_mtrldef_mtrlcode [child_row] = S_INSCUST.mtrlcode[ls_j]
- dw_child.Object.mtrlname[child_row] = S_INSCUST.mtrlname[ls_j]
- dw_child.Object.u_mtrldef_mtrlmode[child_row] = S_INSCUST.mtrlmode[ls_j]
- dw_child.Object.u_mtrldef_mtrltype[child_row] = S_INSCUST.mtrltype[ls_j]
-
- dw_child.Object.u_mtrldef_unit[child_row] = S_INSCUST.unit[ls_j]
- dw_child.Object.qty[child_row] = S_INSCUST.qty[ls_j] / S_INSCUST.rate_buy[ls_j]
- dw_child.Object.u_buytaskmx_addqty[child_row] = 0
- dw_child.Object.u_buytaskmx_rate[child_row] = S_INSCUST.rate_buy[ls_j]
- dw_child.Object.u_buytaskmx_unit[child_row] = S_INSCUST.unit_buy[ls_j]
- dw_child.Object.u_buytaskmx_uqty[child_row] = S_INSCUST.qty[ls_j]
-
- ll_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]//供应商物料别名
- ls_mtrlid =S_INSCUST.mtrlid[ls_j]
- Select isnull(sptmtrlcode,''), isnull(sptmtrlname,''), isnull(sptmtrlmode,'')
- Into :ls_sptmtrlcode, :ls_sptmtrlname, :ls_sptmtrlmode
- From u_sptmtrlname
- Where mtrlid= :ls_mtrlid and sptid= :ll_sptid ;
- dw_child.Object.u_sptmtrlname_sptmtrlname[child_row] = ls_sptmtrlname
- dw_child.Object.u_sptmtrlname_sptmtrlcode[child_row] = ls_sptmtrlcode
- dw_child.Object.u_sptmtrlname_sptmtrlmode[child_row] =ls_sptmtrlmode
-
- // dw_child.Object.u_buytaskmx_relcode[child_row] = S_INSCUST.relcode[ls_j]
- // dw_child.Object.u_buytaskmx_relid[child_row] = S_INSCUST.relid[ls_j]
- // dw_child.Object.u_buytaskmx_relprintid[child_row] = S_INSCUST.relPrintid[ls_j]
- // dw_child.Object.u_buytaskmx_relid2[child_row] = S_INSCUST.relid2[ls_j]
-
- dw_child.Object.u_mtrldef_zxmtrlmode[child_row] = S_INSCUST.zxmtrlmode[ls_j]
- dw_child.Object.u_mtrldef_mtrlsectype[child_row] = S_INSCUST.mtrlsectype[ls_j]
-
- dw_child.Object.u_buytaskmx_status[child_row] = S_INSCUST.status[ls_j]
- dw_child.Object.u_buytaskmx_woodcode[child_row] = S_INSCUST.woodcode[ls_j]
- dw_child.Object.u_buytaskmx_pcode[child_row] = S_INSCUST.pcode[ls_j]
-
- // dw_child.Object.u_mtrldef_p_mtrlname[child_row] = S_INSCUST.proname[ls_j]
- // dw_child.Object.u_mtrldef_p_mtrlmode[child_row] = S_INSCUST.promode[ls_j]
- IF f_find_tax(ll_sptid,'u_spt',ld_tax) = 0 then
- ld_tax = 0
- ELSE
- dw_child.Object.u_buytaskmx_tax[child_row] = ld_tax
- END IF
-
-
- IF f_find_mtrl(s_inscust.mtrlcode[ls_j],-1,arg_s_mtrldef) = 0 THEN
- li_statusflag = 0
- li_woodcodeflag = 0
- li_pcodeflag = 0
- ELSE
- li_statusflag = arg_s_mtrldef.statusflag[1]
- li_pcodeflag = arg_s_mtrldef.pcodeflag[1]
- li_woodcodeflag = arg_s_mtrldef.woodcodeflag[1]
- END IF
- dw_child.Object.u_mtrldef_statusflag[child_row] = li_statusflag
- dw_child.Object.u_mtrldef_woodcodeflag[child_row] = li_woodcodeflag
- dw_child.Object.u_mtrldef_pcodeflag[child_row] = li_pcodeflag
-
- //wf_get_price(child_row)
- dw_child.Object.u_buytaskmx_uprice[child_row] = S_INSCUST.price[ls_j]
- dw_child.Object.u_buytaskmx_rebate[child_row] = S_INSCUST.rebate[ls_j]
- wf_get_sptmtrlname(child_row)
-
- END IF
-
- NEXT
- dw_child.SetFocus()
- dw_child.SetColumn('u_buytaskmx_uqty')
- THIS.TriggerEvent('ue_allowedit')
- END IF
- end event
- type cb_func from w_publ_1ton_share_detail`cb_func within w_buytask
- integer taborder = 20
- end type
- type cb_exit from w_publ_1ton_share_detail`cb_exit within w_buytask
- integer taborder = 340
- end type
- type sle_usual_query from w_publ_1ton_share_detail`sle_usual_query within w_buytask
- integer x = 187
- integer width = 549
- end type
- type cb_retrieveall from w_publ_1ton_share_detail`cb_retrieveall within w_buytask
- integer x = 3063
- integer taborder = 300
- end type
- type em_pagerowno from w_publ_1ton_share_detail`em_pagerowno within w_buytask
- integer x = 2738
- integer y = 36
- integer width = 320
- integer taborder = 280
- end type
- type dw_pageretr from w_publ_1ton_share_detail`dw_pageretr within w_buytask
- integer x = 2354
- integer width = 1161
- integer height = 1052
- integer taborder = 30
- string title = "采购订单摘要内容"
- string dataobject = "dw_buytask_index"
- end type
- event dw_pageretr::rowfocuschanged;call super::rowfocuschanged;wf_statusbtn_fc()
- wf_check_billfj()
- if currentrow<=0 then dw_child.reset()
- end event
- event dw_pageretr::retrieveend;wf_statusbtn_fc()
- end event
- type st_1 from w_publ_1ton_share_detail`st_1 within w_buytask
- integer x = 5
- integer width = 192
- string text = "编号含"
- end type
- type cb_nextpage from w_publ_1ton_share_detail`cb_nextpage within w_buytask
- integer x = 3214
- integer taborder = 330
- end type
- type dw_uc from w_publ_1ton_share_detail`dw_uc within w_buytask
- integer width = 2345
- integer height = 1132
- string dataobject = "dw_buytask_input"
- boolean hsplitscroll = true
- end type
- event dw_uc::dwnkey;Parent.TriggerEvent('user_key')
- IF Key = KeyDownArrow! THEN RETURN 1
- IF dw_edit_mode THEN
- IF dw_uc.GetColumnName ( ) = 'dscrp' And Key = KeyEnter! THEN
- dw_child.ScrollToRow(1)
- dw_child.SetFocus()
- dw_child.SetColumn ('u_buytaskmx_storageid')
- RETURN 1
- ELSEIF dw_uc.GetColumnName ( ) = 'sptcode' And Key = KeyEnter! THEN
- long i
- String ls_code,ls_name,ls_find_code
- Long ls_sptid
- Long cnt = 0
- Boolean if_find = False
- Long dftbanktypeid
- Long dftmoneyid
- dw_uc.AcceptText()
- ls_code = Upper(Trim(dw_uc.Object.sptcode[dw_uc.GetRow()]))
- SELECT u_spt.sptid,
- u_spt.name,
- u_spt.sptcode,
- dftbanktypeid,
- dftmoneyid
- INTO :ls_sptid,:ls_name,:ls_code,:dftbanktypeid,:dftmoneyid
- FROM u_spt
- Where ( sptcode = :ls_code Or Name = :ls_code );
- IF sqlca.SQLCode <> 0 THEN
- IF Pos(Trim(ls_code),'%') = 0 THEN
- ls_find_code = '%'+ Trim(ls_code) + '%'
- ELSE
- ls_find_code = Trim(ls_code)
- END IF
-
- SELECT count(*) INTO :cnt
- FROM u_spt
- Where ( sptcode Like :ls_find_code Or Name Like :ls_find_code );
- IF sqlca.SQLCode <> 0 THEN
- Parent.TriggerEvent('ue_f9')
- RETURN 1
- END IF
- IF cnt <> 1 THEN
- Parent.TriggerEvent('ue_f9')
- RETURN 1
- ELSE
- SELECT u_spt.sptid,
- u_spt.sptcode,
- u_spt.name,
- dftbanktypeid,
- dftmoneyid
- INTO :ls_sptid,:ls_code,:ls_name,:dftbanktypeid,:dftmoneyid
- FROM u_spt
- Where ( sptcode Like :ls_find_code Or Name Like :ls_find_code );
- IF sqlca.SQLCode <> 0 THEN
-
- Parent.TriggerEvent('ue_f9')
- RETURN 1
- ELSE
- if_find = True
- END IF
- END IF
- ELSE
- if_find = True
- END IF
-
- IF if_find THEN
-
- // //重置dw_child
- // wf_change_sptid(ls_sptid)
-
- dw_uc.SetRedraw(False)
- dw_uc.Object.sptid[dw_uc.GetRow()] = ls_sptid
- dw_uc.Object.sptcode[dw_uc.GetRow()] = ls_code
- dw_uc.Object.u_spt_name[dw_uc.GetRow()] = ls_name
-
- dw_uc.Object.u_buytask_banktypeid[dw_uc.GetRow()] = dftbanktypeid
- dw_uc.Object.u_buytask_moneyid[dw_uc.GetRow()] = dftmoneyid
- dw_uc.Object.u_buytask_mrate[dw_uc.GetRow()] = f_get_mrate( dftmoneyid)
-
- FOR i = 1 To dw_child.RowCount( )
- wf_get_price(i)
- wf_get_sptmtrlname(i)
- NEXT
-
-
- dw_uc.SetRedraw(True)
- dw_uc.SetColumn("u_buytask_relcode")
- RETURN 1
- END IF
-
- ELSE
- IF Key = KeyEnter! THEN //
- keybd_event ( 9, 0, 0 , 0 ) // 按下tab
- keybd_event ( 9, 0, 2, 0 ) // 释放tab
- RETURN 1
- END IF
- END IF
- END IF
- end event
- event dw_uc::clicked;call super::clicked;IF row <= 0 THEN RETURN
- IF dwo.Name = 'p_dview' THEN
- Parent.TriggerEvent('ue_add_dscrp')
- END IF
- IF dw_edit_mode THEN
- Long ll_billtype
- ll_billtype = dw_uc.Object.u_buytask_billtype[row]
-
- IF dwo.Name = 'p_p' THEN
- Parent.TriggerEvent('ue_f9')
- ELSEIF dwo.Name = 'p_money' THEN
- Parent.TriggerEvent('ue_ch_money')
- ELSEIF dwo.Name = 'p_banktype' THEN
- Parent.TriggerEvent('ue_ch_banktype')
- ELSEIF dwo.Name = 'p_task' Or dwo.Name = 't_task' THEN
- IF ll_billtype = 2 THEN //订单材料采购
- Parent.TriggerEvent('ue_f11')
- ELSE
- Parent.TriggerEvent('ue_f7') //成品采购
- END IF
- ELSEIF dwo.Name = 'p_his' Or dwo.Name = 't_his' THEN
- Parent.TriggerEvent('ue_his') //历史
- ELSEIF dwo.Name = 'p_quote' Or dwo.Name = 'choicequote_t' THEN
- Parent.TriggerEvent('ue_f12')
- END IF
- END IF
- end event
- event dw_uc::doubleclicked;IF dw_edit_mode AND row > 0 THEN
- IF dwo.Name = 'sptcode' THEN
- PARENT.TriggerEvent('ue_f9')
- END IF
- END IF
- end event
- event dw_uc::itemchanged;call super::itemchanged;IF NOT dw_edit_mode THEN RETURN
- dw_uc.AcceptText()
- IF dw_uc.GetRow() <= 0 THEN RETURN
- IF dwo.Name = 'u_buytask_billtype' THEN
- dw_child.Reset()
- PARENT.TriggerEvent("insert_childrow")
- ELSEIF dwo.Name <> 'u_buytask_moneyid' THEN
- Long ll_moneyid
- ll_moneyid = dw_uc.Object.u_buytask_moneyid[dw_uc.GetRow()]
- dw_uc.SetRedraw(FALSE)
- dw_uc.Object.u_buytask_mrate[dw_uc.GetRow()] = f_get_mrate(ll_moneyid)
- dw_uc.SetRedraw(TRUE)
- END IF
- end event
- type gb_2 from w_publ_1ton_share_detail`gb_2 within w_buytask
- end type
- type dw_child from w_publ_1ton_share_detail`dw_child within w_buytask
- event mousemove pbm_mousemove
- integer y = 1440
- integer width = 3543
- integer height = 832
- integer taborder = 250
- string title = "采购订单明细"
- string dataobject = "dw_buytaskmx"
- end type
- event dw_child::mousemove;IF IsValid(up) THEN
- up.closethis()
- END IF
- end event
- event dw_child::dwnkey;call super::dwnkey;PARENT.TriggerEvent('user_key')
- String ls_mtrlcode,ls_mtrlname,ls_unit,ls_mtrlmode,ls_mtrlsectype,ls_zxmtrlmode,ls_mtrltype
- String ls_ordercode,ls_relcode,ls_unit_buy
- Long ls_mtrlid,ls_sptid,ls_orderid,ls_storageid
- Dec ls_planprice,ls_lmbuyprice,ls_price,ls_rebate,ld_rate_buy
- Long cnt
- Long child_row
- Long ls_null
- SetNull(ls_null)
- String arg_msg = ''
- Decimal ls_1stnewcost,ls_1stzqrate,ls_1strate
- String ls_sptmtrlname
- String ls_1stunit,ls_status,ls_woodcode,ls_pcode
- Int li_statusflag,li_woodcodeflag,li_pcodeflag,ll_billtype
- s_mtrldef_array arg_s_mtrldef
- IF dw_edit_mode THEN
- dw_uc.AcceptText()
- dw_child.AcceptText()
-
- IF dw_uc.GetRow() = 0 THEN RETURN
- ls_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- ll_billtype = dw_uc.Object.u_buytask_billtype[dw_uc.GetRow()]
- IF IsNull(ls_sptid) OR ls_sptid = 0 THEN
- PARENT.TriggerEvent("ue_f9")
- END IF
-
-
-
- IF KeyDown(keydownarrow!) THEN
- Long li_row
- IF dw_child.GetRow() = dw_child.RowCount() THEN
- PARENT.TriggerEvent("insert_childrow")
- END IF
- ELSE
- IF KeyDown(keyenter!) AND NOT KeyDown(keycontrol!) AND NOT KeyDown(keyshift!) THEN
- dw_child.AcceptText()
- child_row = dw_child.GetRow()
-
- IF dw_child.GetColumnName() = 'u_mtrldef_mtrlcode' AND ll_billtype = 0 THEN
-
- ls_storageid = dw_child.Object.u_buytaskmx_storageid[child_row]
- IF ls_storageid = 0 OR IsNull(ls_storageid) THEN
- MessageBox('提示','请先选择仓库', Information!, OK! )
- RETURN
- END IF
-
- ls_mtrlcode = dw_child.Object.u_mtrldef_mtrlcode[child_row]
-
- IF f_find_mtrl(ls_mtrlcode,ls_storageid,arg_s_mtrldef) = 0 THEN
- PARENT.TriggerEvent('ue_f8')
- RETURN 1
- ELSE
- ls_mtrlid = arg_s_mtrldef.mtrlid[1]
- ls_mtrlcode = arg_s_mtrldef.mtrlcode[1]
- ls_mtrlname = arg_s_mtrldef.mtrlname[1]
- ls_unit = arg_s_mtrldef.unit[1]
- ls_mtrlmode = arg_s_mtrldef.mtrlmode[1]
- ls_planprice = arg_s_mtrldef.planprice[1]
- ls_lmbuyprice = arg_s_mtrldef.lmbuyprice[1]
- ld_rate_buy = arg_s_mtrldef.rate_buy[1]
- ls_unit_buy = arg_s_mtrldef.unit_buy[1]
- ls_mtrlsectype = arg_s_mtrldef.mtrlsectype[1]
- ls_mtrltype = arg_s_mtrldef.mtrltype[1]
- ls_zxmtrlmode = arg_s_mtrldef.zxmtrlmode[1]
- li_statusflag = arg_s_mtrldef.statusflag[1]
- li_woodcodeflag = arg_s_mtrldef.woodcodeflag[1]
- li_pcodeflag = arg_s_mtrldef.pcodeflag[1]
- END IF
-
-
- dw_child.Object.mtrlid[child_row] = ls_mtrlid
- dw_child.Object.mtrlname[child_row] = ls_mtrlname
- dw_child.Object.u_mtrldef_unit[child_row] = ls_unit
- dw_child.Object.u_mtrldef_mtrlmode[child_row] = ls_mtrlmode
- dw_child.Object.u_mtrldef_mtrlcode[child_row] = ls_mtrlcode
- dw_child.Object.u_mtrldef_zxmtrlmode[child_row] = ls_zxmtrlmode
- dw_child.Object.u_mtrldef_mtrlsectype[child_row] = ls_mtrlsectype
- dw_child.Object.u_mtrldef_mtrltype[child_row] = ls_mtrltype
- dw_child.Object.u_mtrldef_statusflag[child_row] = li_statusflag
- dw_child.Object.u_mtrldef_woodcodeflag[child_row] = li_woodcodeflag
- dw_child.Object.u_mtrldef_pcodeflag[child_row] = li_pcodeflag
-
- dw_child.Object.u_buytaskmx_status[child_row] = arg_s_mtrldef.status[1]
- dw_child.Object.u_buytaskmx_woodcode[child_row] = arg_s_mtrldef.woodcode[1]
- dw_child.Object.u_buytaskmx_pcode[child_row] = arg_s_mtrldef.pcode[1]
-
- dw_child.Object.u_buytaskmx_rate[child_row] = 1
- dw_child.Object.u_buytaskmx_unit[child_row] = ls_unit
- wf_get_price(child_row)
- wf_get_sptmtrlname(child_row)
- // ls_1strate = 1
- // ls_1stunit = '' //dw_child.Object.u_buytaskmx_unit[child_row]
- // ls_status = dw_child.Object.u_buytaskmx_status[child_row]
- // ls_woodcode = dw_child.Object.u_buytaskmx_woodcode[child_row]
- // ls_pcode = dw_child.Object.u_buytaskmx_pcode[child_row]
- // IF uo_sptprice.uf_getmtrlsptprice(ls_sptid,ls_mtrlid,ls_1stunit,ls_status,ls_woodcode,ls_pcode,0,ls_1stnewcost,ls_1stzqrate,ls_1strate,arg_msg) <> 1 THEN
- // IF ls_planprice = 0 THEN
- // dw_child.Object.u_buytaskmx_uprice[child_row] = ls_lmbuyprice
- // ELSE
- // dw_child.Object.u_buytaskmx_uprice[child_row] = ls_planprice
- // END IF
- // dw_child.Object.u_buytaskmx_rebate[child_row] = 1
- // IF ls_unit_buy = '' THEN
- // dw_child.Object.u_buytaskmx_rate[child_row] = 1
- // dw_child.Object.u_buytaskmx_unit[child_row] = ls_unit
- // ELSE
- // dw_child.Object.u_buytaskmx_rate[child_row] = ld_rate_buy
- // dw_child.Object.u_buytaskmx_unit[child_row] = ls_unit_buy
- // END IF
- // ELSE
- // dw_child.Object.u_buytaskmx_uprice[child_row] = ls_1stnewcost
- // dw_child.Object.u_buytaskmx_rebate[child_row] = ls_1stzqrate
- // dw_child.Object.u_buytaskmx_rate[child_row] = ls_1strate
- // dw_child.Object.u_buytaskmx_unit[child_row] = ls_1stunit
- // END IF
- // IF uo_sptprice.uf_getmtrlname(ls_sptid,ls_mtrlid,ls_sptmtrlname,arg_msg) = 1 THEN
- // dw_child.Object.u_buytaskmx_sptmtrlname[child_row] = ls_sptmtrlname
- // END IF
- PARENT.TriggerEvent('ue_allowedit')
- IF Key = keyenter! THEN
- keybd_event ( 9, 0, 0 , 0 ) // 按下tab
- keybd_event ( 9, 0, 2, 0 ) // 释放tab
- RETURN 1
- END IF
-
-
- ELSEIF dw_child.GetColumnName() = 'u_buytaskmx_status' OR dw_child.GetColumnName() = 'u_buytaskmx_woodocde' OR dw_child.GetColumnName() = 'u_buytaskmx_pcode' THEN
- wf_get_price(child_row)
- wf_get_sptmtrlname(child_row)
-
- // dw_uc.AcceptText()
- // dw_child.AcceptText()
- //
- // child_row = dw_child.GetRow()
- // ls_sptid = dw_uc.Object.sptid[dw_uc.GetRow()]
- // ls_mtrlid = dw_child.Object.mtrlid[child_row]
- // ls_1stunit = dw_child.Object.u_buytaskmx_unit[child_row]
- // ls_status = dw_child.Object.u_buytaskmx_status[child_row]
- // ls_woodcode = dw_child.Object.u_buytaskmx_woodcode[child_row]
- // ls_pcode = dw_child.Object.u_buytaskmx_pcode[child_row]
- //
- // IF uo_sptprice.uf_getmtrlsptprice(ls_sptid,ls_mtrlid,ls_1stunit,ls_status,ls_woodcode,ls_pcode,0,ls_1stnewcost,ls_1stzqrate,ls_1strate,arg_msg) <> 1 THEN
- // // IF ls_planprice = 0 THEN
- // // dw_child.Object.u_buytaskmx_uprice[child_row] = ls_lmbuyprice
- // // ELSE
- // // dw_child.Object.u_buytaskmx_uprice[child_row] = ls_planprice
- // // END IF
- // // dw_child.Object.u_buytaskmx_rebate[child_row] = 1
- // // IF ls_unit_buy = '' THEN
- // // dw_child.Object.u_buytaskmx_rate[child_row] = 1
- // // dw_child.Object.u_buytaskmx_unit[child_row] = ls_unit
- // // ELSE
- // // dw_child.Object.u_buytaskmx_rate[child_row] = ld_rate_buy
- // // dw_child.Object.u_buytaskmx_unit[child_row] = ls_unit_buy
- // // END IF
- // ELSE
- // dw_child.Object.u_buytaskmx_uprice[child_row] = ls_1stnewcost
- // dw_child.Object.u_buytaskmx_rebate[child_row] = ls_1stzqrate
- // dw_child.Object.u_buytaskmx_rate[child_row] = ls_1strate
- // dw_child.Object.u_buytaskmx_unit[child_row] = ls_1stunit
- // END IF
- //
- // IF uo_sptprice.uf_getmtrlname(ls_sptid,ls_mtrlid,ls_sptmtrlname,arg_msg) = 1 THEN
- // dw_child.Object.u_buytaskmx_sptmtrlname[child_row] = ls_sptmtrlname
- // END IF
- IF Key = keyenter! THEN
- keybd_event ( 9, 0, 0 , 0 ) // 按下tab
- keybd_event ( 9, 0, 2, 0 ) // 释放tab
- RETURN 1
- END IF
- ELSEIF dw_child.GetColumnName( ) = 'dscrp' AND dw_child.GetRow() = dw_child.RowCount() THEN
- PARENT.TriggerEvent("insert_childrow")
- RETURN 1
- ELSE
- IF Key = keyenter! THEN
- keybd_event ( 9, 0, 0 , 0 ) // 按下tab
- keybd_event ( 9, 0, 2, 0 ) // 释放tab
- RETURN 1
- END IF
- END IF
- END IF
- END IF
- END IF
- end event
- event dw_child::doubleclicked;string ls_text
- IF dwo.Name = 'dscrp' THEN
- PARENT.TriggerEvent('ue_view_mxdscrp')
- RETURN
- ELSEIF dwo.Name = 'u_buytaskmx_dscrp2' THEN
- PARENT.TriggerEvent('ue_view_mxdscrp2')
- RETURN
- ELSEIF dwo.Name = 'u_buytaskmx_dscrp3' THEN
- PARENT.TriggerEvent('ue_view_mxdscrp3')
- RETURN
- ELSEIF dwo.Name = 'u_buytaskmx_dscrp4' THEN
- PARENT.TriggerEvent('ue_view_mxdscrp4')
- RETURN
- END IF
- Long ll_billtype
- dw_uc.AcceptText()
- ll_billtype = dw_uc.Object.u_buytask_billtype[dw_uc.GetRow()]
- IF dw_edit_mode THEN
- CHOOSE CASE dwo.Name
- CASE 'u_buytaskmx_unit'
- Parent.TriggerEvent('ue_f10')
- CASE 'u_mtrldef_mtrlcode'
- IF ll_billtype = 0 THEN //备货
- Parent.TriggerEvent('ue_f8')
- ELSEIF ll_billtype = 1 THEN
- Parent.TriggerEvent('ue_f7') //销售订单
- ELSE
- Parent.TriggerEvent('ue_f11') //运算
- END IF
- Parent.TriggerEvent('ue_get_maxprice') //计算当前日期新收货价
-
- CASE 'u_buytaskmx_uqty' , 'u_buytaskmx_formula'
- Parent.TriggerEvent('ue_cmpl_qty')
- CASE 'u_buytaskmx_uprice' , 'u_buytaskmx_formula2'
- Parent.TriggerEvent('ue_cmpl_price')
- END CHOOSE
- ELSE
- IF dwo.Name = 'u_buytaskmx_uprice' THEN
- Parent.TriggerEvent('ue_show_price_remind')
- END IF
- END IF
- end event
- event dw_child::itemchanged;call super::itemchanged;IF NOT dw_edit_mode THEN RETURN
- THIS.AcceptText()
- IF dwo.Name = 'u_buytaskmx_iforder' THEN
- IF THIS.Object.u_buytaskmx_iforder[row] = 0 THEN
- dw_child.Object.u_buytaskmx_orderid[row] = 0
-
- dw_child.Object.u_order_ml_relcode[row] = ''
- dw_child.Object.u_mtrldef_mtrlcode_1[row] = ''
- dw_child.Object.u_order_ml_ordercode[row] = ''
-
- END IF
- ELSEIF dwo.Name = 'u_buytaskmx_uqty' Or dwo.Name = 'u_buytaskmx_uamt' Or dwo.Name = 'u_buytaskmx_uprice' Or dwo.Name = 'u_buytaskmx_rebate' or dwo.Name = 'u_buytaskmx_uprice_notax' or dwo.name = 'u_buytaskmx_tax' THEN
- wf_cmpl_amt(row)
- END IF
- end event
- event dw_child::itemfocuschanged;call super::itemfocuschanged;dw_child.AcceptText()
- //dw_child.Object.amt[dw_child.GetRow()] = Round(dw_child.Object.u_buytaskmx_uqty[dw_child.GetRow()]*dw_child.Object.u_buytaskmx_uprice[dw_child.GetRow()]*dw_child.Object.u_buytaskmx_rebate[dw_child.GetRow()] ,2)
- end event
- event dw_child::editchanged;call super::editchanged;//IF This.GetColumnName() = 'u_buytaskmx_uamt' THEN RETURN
- IF DATA= '' THEN RETURN
- this.accepttext()
- end event
- type cb_viewprint from w_publ_1ton_share_detail`cb_viewprint within w_buytask
- end type
- type cb_print from w_publ_1ton_share_detail`cb_print within w_buytask
- integer taborder = 240
- end type
- type cb_add from w_publ_1ton_share_detail`cb_add within w_buytask
- end type
- event cb_add::clicked;IF Not f_power_ind(93) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- String arg_msg = ''
- Long uc_row,pagerert_row
- Long relid_pageretr,reld_uc,i
- Long ll_taskid
- String ls_relcode
- Long ll_cnt
- s_buytask_mx s_mx
- IF dw_edit_mode THEN
- dw_uc.AcceptText()
- dw_child.AcceptText()
- uc_row = dw_uc.GetRow()
- IF uc_row <= 0 THEN
- MessageBox('提示','请选定当前目标单据!', Information!, OK! )
- RETURN
- END IF
-
- IF dw_uc.Object.u_buytask_moneyid[uc_row] = 0 THEN
- MessageBox('提示','请选择币种!',Information!,OK!)
- dw_uc.SetFocus()
- dw_uc.SetColumn("u_buytask_moneyid")
- RETURN
- END IF
-
- IF Year(Date(dw_uc.Object.Requiredate[uc_row])) < 2000 THEN
- MessageBox('提示','订货日期为空或不合理!', Information!, OK! )
- dw_uc.SetFocus()
- dw_uc.SetColumn("Requiredate")
- RETURN
- END IF
-
- IF Not Len(String(dw_uc.Object.Assign_emp[uc_row])) > 0 THEN
- MessageBox('提示','请填写订单负责人!', Information!, OK! )
- dw_uc.SetFocus()
- dw_uc.SetColumn("Assign_emp")
- RETURN
- END IF
-
- IF Not sys_power_issuper And f_power_ind(1481) THEN
- arg_msg = ''
- FOR i = 1 To dw_child.RowCount()
- IF dw_child.Object.u_buytaskmx_uprice[i] = 0 THEN
- arg_msg = arg_msg + '第' + String(i) + '行,物料:' + dw_child.Object.u_mtrldef_mtrlcode[i] + ',单价为零!~n '
- END IF
- NEXT
-
- IF arg_msg <> '' THEN
- MessageBox('提示',arg_msg + '受用户权限限制,不能保存!',Information!,OK!)
- RETURN
- END IF
- END IF
-
- //检查交货日期
- arg_msg = ''
- FOR i = 1 To dw_child.RowCount()
- IF Date(dw_child.Object.u_buytaskmx_requiredate[i]) < Date(dw_uc.Object.Requiredate[uc_row]) THEN
- arg_msg += '第' + String(i) + '行,明细交货日期小于订货日期!~n '
- END IF
- NEXT
-
- IF arg_msg <> '' THEN
- MessageBox('提示',arg_msg + '不能保存!',Information!,OK!)
- RETURN
- END IF
-
- //检查相关号是否重复
- ll_taskid = dw_uc.Object.taskid[uc_row]
- ls_relcode = Trim(dw_uc.Object.u_buytask_relcode[uc_row])
- IF ls_relcode <> "" THEN
- SELECT count(*)
- INTO :ll_cnt
- FROM u_buytask
- WHERE relcode = :ls_relcode
- And taskid <> :ll_taskid;
- IF sqlca.SQLCode <> 0 THEN
- ll_cnt = 0
- END IF
-
- IF ll_cnt > 0 THEN
- IF MessageBox ("询问","单据相关号["+ls_relcode+"]已存在,是否继续保存?",Question!,YesNo! ) = 2 THEN RETURN
- END IF
- END IF
-
-
- //检查辅数与数量
- IF wf_check_qtyandaddqty(arg_msg) = 0 THEN
- MessageBox('提示',arg_msg + ',不能保存!',Information!,OK!)
- RETURN
- END IF
-
-
- obj_task.Requiredate = dw_uc.Object.Requiredate[uc_row] //要求完成日期
- obj_task.Assign_emp = dw_uc.Object.Assign_emp[uc_row] //订单负责人
- obj_task.Kind = 0
- obj_task.sptID = dw_uc.Object.sptID[uc_row]
- obj_task.dscrp = dw_uc.Object.dscrp[uc_row]
- obj_task.relcode = dw_uc.Object.u_buytask_relcode[uc_row]
- obj_task.banktypeid = dw_uc.Object.u_buytask_banktypeid[uc_row]
- obj_task.train = dw_uc.Object.u_buytask_train[uc_row]
- obj_task.billtype = dw_uc.Object.u_buytask_billtype[uc_row]
- obj_task.moneyid = dw_uc.Object.u_buytask_moneyid[uc_row]
- obj_task.mrate = dw_uc.Object.u_buytask_mrate[uc_row]
-
- FOR i = 1 To dw_child.RowCount()
- IF dw_child.Object.mtrlid[i] > 0 THEN
- s_mx.iforder = 0
- s_mx.orderid = 0
- s_mx.ordercode = ''
- s_mx.mtrlid = dw_child.Object.mtrlid[i]
- s_mx.uqty = dw_child.Object.u_buytaskmx_uqty[i]
- s_mx.addqty = dw_child.Object.u_buytaskmx_addqty[i]
- s_mx.uprice = dw_child.Object.u_buytaskmx_uprice[i]
- s_mx.rebate = dw_child.Object.u_buytaskmx_rebate[i]
- s_mx.planprice = 0
- s_mx.dscrp = dw_child.Object.dscrp[i]
- s_mx.mtrlcode = dw_child.Object.u_mtrldef_mtrlcode[i]
- s_mx.printid = dw_child.Object.pid[i]
- s_mx.requiredate = dw_child.Object.u_buytaskmx_requiredate[i]
- s_mx.storageid = dw_child.Object.u_buytaskmx_storageid[i]
- s_mx.status = dw_child.Object.u_buytaskmx_status[i]
- s_mx.woodcode = dw_child.Object.u_buytaskmx_woodcode[i]
- s_mx.pcode = dw_child.Object.u_buytaskmx_pcode[i]
- s_mx.unit = dw_child.Object.u_buytaskmx_unit[i]
- s_mx.rate = dw_child.Object.u_buytaskmx_rate[i]
- s_mx.relid = dw_child.Object.u_buytaskmx_relid[i]
- s_mx.relprintid = dw_child.Object.u_buytaskmx_relprintid[i]
- s_mx.relcode = dw_child.Object.u_buytaskmx_relcode[i]
- s_mx.formula = dw_child.Object.u_buytaskmx_formula[i]
- s_mx.formula2 = dw_child.Object.u_buytaskmx_formula2[i]
- s_mx.relid2 = dw_child.Object.u_buytaskmx_relid2[i]
- s_mx.tax = dw_child.Object.u_buytaskmx_tax[i]
- s_mx.plancode = dw_child.Object.u_buytaskmx_plancode[i]
- s_mx.dscrp2 = dw_child.Object.u_buytaskmx_dscrp2[i]
- s_mx.dscrp3 = dw_child.Object.u_buytaskmx_dscrp3[i]
- s_mx.dscrp4 = dw_child.Object.u_buytaskmx_dscrp4[i]
- s_mx.uprice_notax = dw_child.Object.u_buytaskmx_uprice_notax[i] //不含税单价
- s_mx.uamt_tax = dw_child.Object.u_buytaskmx_uamt_tax[i]
- IF obj_task.acceptmx(s_mx,arg_msg) = 0 THEN
- MessageBox('错误',arg_msg,stopsign!,OK!)
- RETURN
- END IF
- END IF
- NEXT
-
- IF obj_task.savesubmit(publ_operator,arg_msg,True) = 0 THEN
- MessageBox('错误',arg_msg, StopSign!, OK! )
- RETURN
- END IF
- // MessageBox('提示','保存操作成功!')
-
- //write ini
- f_SetProfileString (sys_empid,dw_uc.DataObject, "dft_banktype", String(dw_uc.Object.u_buytask_banktypeid[dw_uc.GetRow()]))
- f_SetProfileString (sys_empid,dw_uc.DataObject, "moneyid",String(dw_uc.Object.u_buytask_moneyid[dw_uc.GetRow()]))
- f_SetProfileString (sys_empid,dw_uc.DataObject, "billtype",String(dw_uc.Object.u_buytask_billtype[dw_uc.GetRow()]))
- f_SetProfileString (sys_empid,dw_uc.DataObject, "assign_emp",String(dw_uc.Object.Assign_emp[dw_uc.GetRow()]))
-
-
-
- Long ll_row
- ll_row = dw_pageretr.GetRow()
- dw_pageretr.SelectRow(0,False)
- dw_pageretr.SelectRow(ll_row,True)
- wf_refresh_curuc(obj_task.scid,obj_task.taskid) //刷新uc
- String ls_taskcode
- ls_taskcode = dw_pageretr.Object.taskcode[dw_pageretr.GetRow()]
- IF f_billevent_trigger (401, 2, ls_taskcode, arg_msg) = 0 THEN
- MessageBox('Error',arg_msg)
- END IF
- ELSE
- IF obj_task.newbegin(cur_scid,arg_msg) = 0 THEN //
- MessageBox('错误',arg_msg, StopSign!, OK! )
- RETURN
- END IF
- END IF
- CALL Super::Clicked
- IF dw_edit_mode THEN
- Parent.TriggerEvent("insert_childrow")
- String ls_banktype,ls_moneyid,ls_billtype,ls_assign_emp
-
- ls_banktype = f_ProfileString (sys_empid,dw_uc.DataObject, "dft_banktype",'0')
- ls_moneyid = f_ProfileString (sys_empid,dw_uc.DataObject, "moneyid",'0')
- ls_billtype = f_ProfileString (sys_empid,dw_uc.DataObject, "billtype",'0')
- // ls_assign_emp = f_ProfileString (sys_empid,dw_uc.DataObject, "assign_emp",'')
- ls_assign_emp = publ_operator
- dw_uc.SetRedraw(False)
- dw_uc.Object.u_buytask_moneyid[dw_uc.GetRow()] = Long(ls_moneyid)
- dw_uc.Object.u_buytask_mrate[dw_uc.GetRow()] = f_get_mrate(Long(ls_moneyid))
- dw_uc.Object.u_buytask_banktypeid[dw_uc.GetRow()] = Long(ls_banktype)
- dw_uc.Object.u_buytask_billtype[dw_uc.GetRow()] = Long(ls_billtype)
- dw_uc.Object.Assign_emp[dw_uc.GetRow()] = ls_assign_emp
- dw_uc.SetFocus()
- dw_uc.SetColumn("u_buytask_moneyid")
- dw_uc.SetRedraw(True)
- ELSE
- Parent.TriggerEvent("retrieve_childdw")
- END IF
- end event
- type cb_edit from w_publ_1ton_share_detail`cb_edit within w_buytask
- end type
- event cb_edit::clicked;IF NOT f_power_ind(93) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- String arg_msg = ''
- Long uc_row
- uc_row = dw_pageretr.GetRow()
- IF uc_row <= 0 THEN
- MessageBox('提示','请选定当前目标单据!', Information!, OK! )
- RETURN
- END IF
- IF NOT dw_edit_mode THEN
- IF obj_task.updatebegin(dw_pageretr.Object.u_buytask_scid[uc_row],dw_pageretr.Object.taskid[uc_row],arg_msg) = 0 THEN
- MessageBox('错误',arg_msg, StopSign!, OK! )
- RETURN
- END IF
- END IF
- CALL SUPER::Clicked
- end event
- type cb_delet from w_publ_1ton_share_detail`cb_delet within w_buytask
- integer taborder = 260
- end type
- event cb_delet::clicked;call super::clicked;IF NOT f_power_ind(594) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- //
- IF dw_edit_mode THEN RETURN
- String arg_msg = ''
- Long uc_row
- uc_row = dw_pageretr.GetRow()
- IF uc_row <= 0 THEN
- MessageBox('系统提示','请选定当前目标订单!', Information!, OK! )
- RETURN
- END IF
- IF MessageBox ("询问","是否确定要删除当前吗",Question!,YesNo! ) = 2 THEN RETURN
- IF obj_task.Cancel(dw_pageretr.Object.u_buytask_scid[uc_row],dw_pageretr.Object.taskid[uc_row],arg_msg,TRUE) = 0 THEN
- MessageBox('错误',arg_msg, StopSign!, OK! )
- ELSE
- //日志
- Long ls_id
- String ls_code
- ls_id = dw_pageretr.Object.taskid[uc_row]
- ls_code = dw_pageretr.Object.taskCODE[uc_row]
- f_setsysoplog('采购订单','删除,id:'+String(ls_id)+',单号:'+ls_code,arg_msg,TRUE)
- //--
-
- MessageBox('提示','删除单据'+String(dw_pageretr.Object.taskCODE[uc_row])+'成功!', Information!, OK! )
-
- dw_pageretr.DeleteRow(uc_row)
- dw_pageretr.PostEvent(RowFocusChanged!)
- END IF
- end event
- type cb_addzy from w_publ_1ton_share_detail`cb_addzy within w_buytask
- end type
- event cb_addzy::clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu
- String menustr
- IF NOT dw_edit_mode THEN
- menustr = "Text=增加备注~tEvent=ue_addzy"
- menustr = menustr + "|" + "Text=-"
- menustr = menustr + "|" + "Text=暂停订单~tEvent=ue_tempstoptask"
- menustr = menustr + "|" + "Text=取消暂停~tEvent=ue_ctempstoptask"
- menustr = menustr + "|" + "Text=终止订单~tEvent=ue_stopsaletask"
- menustr = menustr + "|" + "Text=取消终止~tEvent=ue_cstopsaletask"
- menustr = menustr + "|" + "Text=完成订单~tEvent=ue_finishtask"
- menustr = menustr + "|" + "Text=取消完成~tEvent=ue_cfinishtask"
- menustr = menustr + "|" + "Text=-"
- menustr = menustr + "|" + "Text=中止明细物料~tEvent=ue_stopmx"
- menustr = menustr + "|" + "Text=取消中止~tEvent=ue_cstopmx"
- menustr = menustr + "|" + "Text=-"
- menustr = menustr + "|" + "Text=复制单据~tEvent=ue_bill_copy"
- menustr = menustr + "|" + "Text=-"
- menustr = menustr + "|" + "Text=确认~tEvent=ue_priceaudit"
- menustr = menustr + "|" + "Text=反确认~tEvent=ue_cpriceaudit"
- menustr = menustr + "|" + "Text=-"
- menustr = menustr + "|" + "Text=查看附件~tEvent=ue_fj_view"
- menustr = menustr + "|" + "Text=添加附件~tEvent=ue_fj_edit"
- menustr = menustr + "|" + "Text=刷新附件数量~tEvent=retrieve_fjnum"
- menustr = menustr + "|" + "Text=-"
- menustr = menustr + "|" + "Text=发送Email~tEvent=ue_sendemail"
- menustr = menustr + "|" + "Text=-"
- menustr += "|" + "Text=辅助建立采购收货单~tEvent=ue_create_inware_buy"
- menustr += "|" + "Text=辅助建立采购订单付款单~tEvent=ue_create_taskdamt"
- ELSE
-
- menustr = menustr + "|" + "Text=粘贴单据~tEvent=ue_bill_paste"
- menustr = menustr + "|" + "Text=-"
- menustr = menustr + "|" + "Text=辅助计算~tEvent=ue_cpml_qty"
- END IF
- IF Len(Trim(menustr)) <> 0 THEN
- dmPopupMenu = CREATE m_Dfc_Control_PopupMenu
- dmPopupMenu.mf_BuildMenu(THIS, menustr)
- dmPopupMenu.mf_PopMenu()
- DESTROY dmPopupMenu
- END IF
- end event
- type cb_auditing from w_publ_1ton_share_detail`cb_auditing within w_buytask
- integer taborder = 290
- string text = "审批&F"
- end type
- event cb_auditing::clicked;call super::clicked;IF Not f_power_ind(94) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- IF dw_edit_mode THEN RETURN
- String arg_msg = ''
- Long pagerert_row
- pagerert_row = dw_pageretr.GetRow()
- IF pagerert_row <= 0 THEN
- MessageBox('提示','请选定当前目标订单!', Information!, OK! )
- RETURN
- END IF
- IF MessageBox ("询问","是否确定要对当前订单作采购审核吗?",Question!,YesNo! ) = 2 THEN RETURN
- IF obj_task.firstpermit(dw_pageretr.Object.u_buytask_scid[pagerert_row],dw_pageretr.Object.taskid[pagerert_row],publ_operator,arg_msg,True) = 0 THEN
- MessageBox('Error!',arg_msg)
- ELSE
- MessageBox('提示','订单采购审核成功!', Information!, OK! )
- String ls_taskcode
- ls_taskcode = dw_pageretr.Object.taskcode[dw_pageretr.GetRow()]
- IF f_billevent_trigger (401, 3, ls_taskcode, arg_msg) = 0 THEN
- MessageBox('Error',arg_msg)
- END IF
- IF cur_status <> -1 THEN
- dw_pageretr.DeleteRow(pagerert_row)
- ELSE
- wf_refresh_curuc(dw_pageretr.Object.u_buytask_scid[pagerert_row],dw_pageretr.Object.taskid[pagerert_row])
- END IF
- END IF
- end event
- type cb_xm from w_publ_1ton_share_detail`cb_xm within w_buytask
- end type
- event cb_xm::clicked;//
- is_mx_menustr = ''
- IF dw_edit_mode THEN
- is_mx_menustr += "|" + "Text=批设定单价~tEvent=ue_p_uprice_set"
- is_mx_menustr += "|" + "Text=计算税率~tEvent=ue_cmpl_tax"
- is_mx_menustr += "|" + "Text=批设定税率~tEvent=ue_p_tax"
- is_mx_menustr += "|" + "Text=批设定交货期~tEvent=ue_p_requiredate_set"
- is_mx_menustr += "|" + "Text=批设定数量公式~tEvent=ue_p_formula_set"
- is_mx_menustr += "|" + "Text=批设定单价公式~tEvent=ue_p_formula2_set"
- is_mx_menustr += "|" + "Text=批由数量公式计算数量~tEvent=ue_p_cmpl_qty"
- is_mx_menustr += "|" + "Text=批由单价公式计算单价~tEvent=ue_p_cmpl_price" //批由公式计算单价
- is_mx_menustr += "|" + "Text=批由辅数和配置计算数量~tEvent=ue_cmpl_status_qty"
- ELSE
- is_mx_menustr += "|" + "Text=在进行的采购订单修改供应商回复交期和延期原因~tEvent=ue_buytask_mod"
- END IF
- CALL Super::Clicked
- end event
- type cb_retrieve from w_publ_1ton_share_detail`cb_retrieve within w_buytask
- integer taborder = 200
- end type
- type cb_xls from w_publ_1ton_share_detail`cb_xls within w_buytask
- end type
- type cb_help from w_publ_1ton_share_detail`cb_help within w_buytask
- end type
- type cb_auditing_cancel from w_publ_1ton_share_detail`cb_auditing_cancel within w_buytask
- end type
- event cb_auditing_cancel::clicked;call super::clicked;IF NOT f_power_ind(96) THEN
- MessageBox('提示',sys_msg_pow, Information!, OK! )
- RETURN
- END IF
- IF dw_edit_mode THEN RETURN
- String arg_msg = ''
- Long pagerert_row
- pagerert_row = dw_pageretr.GetRow()
- IF pagerert_row <= 0 THEN
- MessageBox('提示','请选定当前目标订单!', Information!, OK! )
- RETURN
- END IF
- IF MessageBox ("询问","是否确定要对当前订单作取消审核吗?",Question!,YesNo! ) = 2 THEN RETURN
- IF obj_task.cancelpermit(dw_pageretr.Object.u_buytask_scid[pagerert_row],dw_pageretr.Object.taskid[pagerert_row],arg_msg,TRUE) = 0 THEN
- MessageBox('错误',arg_msg, StopSign!, OK! )
- ELSE
-
- //日志
- Long ls_id
- String ls_code
- ls_id = dw_pageretr.Object.taskid[pagerert_row]
- ls_code = dw_pageretr.Object.taskCODE[pagerert_row]
- f_setsysoplog('采购订单','撤审,id:'+String(ls_id)+',单号:'+ls_code,arg_msg,TRUE)
- //--
-
- MessageBox('提示','订单取消审核成功!', Information!, OK! )
- IF cur_status <> -1 THEN
- dw_pageretr.DeleteRow(pagerert_row)
- ELSE
- wf_refresh_curuc(dw_pageretr.Object.u_buytask_scid[pagerert_row],dw_pageretr.Object.taskid[pagerert_row])
- END IF
- END IF
- end event
- type p_msg from w_publ_1ton_share_detail`p_msg within w_buytask
- end type
- type p_help from w_publ_1ton_share_detail`p_help within w_buytask
- end type
- type p_encl from w_publ_1ton_share_detail`p_encl within w_buytask
- end type
- event p_encl::clicked;m_Dfc_Control_PopupMenu dmPopupMenu
- String menustr
- menustr = "Text=添加附件~tEvent=ue_fj_edit"
- menustr = menustr + "|" + "Text=查看附件~tEvent=ue_fj_view"
- menustr = menustr + "|" + "Text=-"
- menustr = menustr + "|" + "Text=添加明细附件~tEvent=ue_fj_edit_mx"
- menustr = menustr + "|" + "Text=查看明细附件~tEvent=ue_fj_view_mx"
- menustr = menustr + "|" + "Text=产品附件另存为明细附件~tEvent=ue_fj_mx_add_p"
- menustr = menustr + "|" + "Text=-"
- menustr = menustr + "|" + "Text=打开副本~tEvent=ue_copyself"
- IF Len(Trim(menustr)) <> 0 THEN
- dmPopupMenu = Create m_Dfc_Control_PopupMenu
- dmPopupMenu.mf_BuildMenu(This, menustr)
- dmPopupMenu.mf_PopMenu()
- Destroy dmPopupMenu
- END IF
- end event
- type p_other from w_publ_1ton_share_detail`p_other within w_buytask
- end type
- event p_other::clicked;if sys_option_if_ljfieb = 0 then return
- m_Dfc_Control_PopupMenu dmPopupMenu
- string menustr
- menustr="Text=发送单据~tEvent=ue_send_ljfieb"
- menustr=menustr + "|" + "Text=-"
- menustr = menustr + "|" + "Text=查看电子商务记录~tEvent=ue_jdview_ljfieb"
- menustr=menustr + "|" + "Text=-"
- menustr = menustr + "|" + "Text=查看订单进度~tEvent=ue_buytask_jd_ljfieb"
-
- if len(trim(menustr))<>0 then
- dmPopupMenu = Create m_Dfc_Control_PopupMenu
- dmPopupMenu.mf_BuildMenu(This, menustr)
- dmPopupMenu.mf_PopMenu()
- Destroy dmPopupMenu
- end if
- end event
- type gb_3 from w_publ_1ton_share_detail`gb_3 within w_buytask
- end type
- type ln_bar from w_publ_1ton_share_detail`ln_bar within w_buytask
- end type
- type ln_bar2 from w_publ_1ton_share_detail`ln_bar2 within w_buytask
- end type
- type r_bar from w_publ_1ton_share_detail`r_bar within w_buytask
- end type
- type ln_1 from w_publ_1ton_share_detail`ln_1 within w_buytask
- end type
- type ln_2 from w_publ_1ton_share_detail`ln_2 within w_buytask
- end type
- type ddlb_scid from uo_ddlb_scid within w_buytask
- integer x = 928
- integer y = 188
- integer width = 549
- integer height = 620
- integer taborder = 30
- boolean bringtotop = true
- end type
- event constructor;call super::constructor;cur_scid=this.uo_scid
- end event
- event selectionchanged;call super::selectionchanged;cur_scid=this.uo_scid
- parent.triggerevent("retrieve_pageretr")
- end event
- type st_2 from statictext within w_buytask
- integer x = 745
- integer y = 204
- integer width = 192
- integer height = 48
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- long backcolor = 134217739
- string text = "分 部"
- boolean focusrectangle = false
- end type
- type st_3 from statictext within w_buytask
- integer x = 1518
- integer y = 204
- integer width = 192
- integer height = 48
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- long backcolor = 134217739
- string text = "状 态"
- boolean focusrectangle = false
- end type
- type ddlb_status from uo_ddlb_status within w_buytask
- integer x = 1701
- integer y = 188
- integer width = 402
- integer height = 812
- integer taborder = 100
- boolean bringtotop = true
- string item[] = {"[全部]","待审批[0]","在进行[1]","已暂停[2]","已终止[3]","自动完成[5]","手动完成[6]"}
- end type
- event selectionchanged;call super::selectionchanged;parent.triggerevent("retrieve_pageretr")
- end event
- event uof_getvalue;call super::uof_getvalue;cur_status = this.uo_status
- end event
- type cbx_enamt_edit from checkbox within w_buytask
- integer x = 3296
- integer y = 68
- integer width = 795
- integer height = 80
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- long backcolor = 134217739
- string text = "录入金额计算单价"
- end type
- event clicked;IF THIS.Checked THEN
- ii_enamt_edit = 1
- ELSE
- ii_enamt_edit = 0
- END IF
- f_SetProfileString (sys_empid,publ_userid+'_'+dw_uc.DataObject, "enamt_edit",String(ii_enamt_edit))
- //parent.triggerevent("ue_allowedit")
- IF ii_enamt_edit = 0 THEN
- dw_child.Modify('u_buytaskmx_uamt.protect = 1~t u_buytaskmx_uamt.Color = 0')
- dw_child.Modify('u_buytaskmx_uamt_t.Color = 0')
- ELSE
- dw_child.Modify('u_buytaskmx_uamt.protect = 0~t u_buytaskmx_uamt.Color = "0~trgb(0,0,255)"')
- dw_child.Modify('u_buytaskmx_uamt_t.Color = "0~trgb(0,0,255)"')
- END IF
- end event
- event constructor;this.backcolor = 14215660
- ii_enamt_edit = Long(f_ProfileString (sys_empid,publ_userid+'_'+dw_uc.DataObject, "enamt_edit",'0'))
- IF ii_enamt_edit = 1 THEN
- THIS.Checked = TRUE
- ELSE
- THIS.Checked = FALSE
- END IF
- end event
- type cbx_enamt_notax_edit from checkbox within w_buytask
- integer x = 4114
- integer y = 68
- integer width = 795
- integer height = 80
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- long backcolor = 134217739
- string text = "录入不含税单价"
- end type
- event clicked;IF THIS.Checked THEN
- ii_enamt_notax_edit = 1
- ELSE
- ii_enamt_notax_edit = 0
- END IF
- f_SetProfileString (sys_empid,publ_userid+'_'+dw_uc.DataObject, "enamt_notax_edit",String(ii_enamt_notax_edit))
- wf_enamt_facechg()
- end event
- event constructor;
- this.backcolor = 14215660
- ii_enamt_notax_edit = Long(f_ProfileString (sys_empid,publ_userid+'_'+dw_uc.DataObject, "enamt_notax_edit",'0'))
- IF ii_enamt_notax_edit = 1 THEN
- THIS.Checked = TRUE
- ELSE
- THIS.Checked = FALSE
- END IF
- wf_enamt_facechg()
- //
- end event
|