No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

合約報價單.vb 462KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845
  1. Imports System.IO
  2. Imports Microsoft.Office.Interop.Excel.XlUnderlineStyle
  3. Imports Microsoft.Office.Interop.Excel.Constants
  4. Imports Microsoft.Office.Interop.Excel.XlBordersIndex
  5. Imports Microsoft.Office.Interop.Excel.XlLineStyle
  6. Imports Microsoft.Office.Interop.Excel.XlBorderWeight
  7. Imports Microsoft.Office.Interop.Excel.XlThemeFont
  8. Imports Microsoft.Office.Interop.Excel.XlThemeColor
  9. Imports Microsoft.Office.Interop.Excel.XlWindowState
  10. Imports Microsoft.Office.Interop.Excel
  11. Imports Microsoft.Office.Interop.Word
  12. Imports PdfSharp.Pdf
  13. Imports PdfSharp.Pdf.IO
  14. Public Class 合約報價單
  15. ReadOnly ds4, ds7, ds8, ds9, ds10, ds11, ds13 As New DataSet
  16. Dim KKK2, 物料規格, ESTR, 目前選擇, 條件選擇, 頁面, 群組碼(21) As String
  17. Dim EDR, A1, A2, A3, B2, B3, AA1, AA2, AA3, AA5, BB2, BB3, BB4, BB5, OX1, OY1, OY2, 選取位置, NUM1, DGV_X, DGV_Y, XN1, XN2 As Integer
  18. Dim 啟動運算, 已超出, 放大, 不再動作1, 簽回檔, 複製報價 As Boolean
  19. Dim 人民幣匯率, 美金匯率, 印尼匯率, 匯率1 As Double
  20. Dim xlApp As Microsoft.Office.Interop.Excel.Application : Dim xlBook As Workbook : Dim xlSheet As Worksheet
  21. Private Sub Set_群組清單()
  22. Dim ds1 As New DataSet : 群組分類_dgv.DataSource = Nothing : ds1.Clear()
  23. 群組分類_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  24. 群組分類_dgv.ColumnHeadersHeight = 25 : 群組分類_dgv.AllowUserToAddRows = False : 群組分類_dgv.RowTemplate.Height = 45
  25. SQL_物料群組()
  26. da.Fill(ds1) : 群組分類_dgv.DataSource = ds1.Tables(0) : conn.Close()
  27. 次項變形()
  28. End Sub
  29. Private Sub Set_清單1_1()
  30. Dim ds4 As New DataSet : 物料清單1_dgv.DataSource = Nothing : ds4.Clear()
  31. 物料清單1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  32. 物料清單1_dgv.ColumnHeadersHeight = 25 : 物料清單1_dgv.AllowUserToAddRows = False : 物料清單1_dgv.RowTemplate.Height = 45
  33. ConnOpen() : SQL_建築物料請購單申請_物料清單一() : CmdSet_For_DGV()
  34. da.Fill(ds4) : 物料清單1_dgv.DataSource = ds4.Tables(0) : conn.Close()
  35. 物料清單1_dgv.Columns(0).FillWeight = 20 : 物料清單1_dgv.Columns(1).Visible = False : 物料清單1_dgv.Columns(2).FillWeight = 175
  36. 物料清單1_dgv.Columns(4).Visible = False : 物料清單1_dgv.Columns(5).FillWeight = 45 : 物料清單1_dgv.Columns(3).Visible = False
  37. 物料清單1_dgv.Columns(0).ReadOnly = True : 物料清單1_dgv.Columns(1).ReadOnly = True : 物料清單1_dgv.Columns(2).ReadOnly = True
  38. For i As Integer = 0 To 物料清單1_dgv.Rows.Count - 1
  39. 物料清單1_dgv(0, i).Value = i + 1
  40. Next
  41. If 低網速模式 = False Then
  42. 物料清單1_dgv.Columns(6).FillWeight = 50 : 物料清單1_dgv.Columns(6).Visible = True
  43. Dim mycol As DataGridViewImageColumn = 物料清單1_dgv.Columns("圖檔") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom
  44. Else : If 物料清單1_dgv.Columns.Count = 7 Then : 物料清單1_dgv.Columns(6).Visible = False : End If : End If
  45. End Sub
  46. Private Sub Set_主管清單()
  47. Dim ds1 As New DataSet : 主管_dgv.DataSource = Nothing : ds1.Clear()
  48. 主管_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  49. 主管_dgv.ColumnHeadersHeight = 25 : 主管_dgv.AllowUserToAddRows = False : 主管_dgv.RowTemplate.Height = 45
  50. SQL_系統組織結構圖_單位主管1()
  51. da.Fill(ds1) : 主管_dgv.DataSource = ds1.Tables(0) : conn.Close()
  52. 主管_dgv.Columns(0).FillWeight = 100 : 主管_dgv.Columns(1).FillWeight = 50 : 主管_dgv.Columns(2).FillWeight = 150
  53. End Sub
  54. Private Sub Set_合約清單1()
  55. Dim ds6 As New DataSet : 合約1_dgv.DataSource = Nothing : ds6.Clear()
  56. 合約1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  57. 合約1_dgv.ColumnHeadersHeight = 25 : 合約1_dgv.AllowUserToAddRows = False
  58. PA = 關鍵字搜尋1_tb.Text : PA46 = 合約編號2_cb.Text
  59. SQL_合約清單_報價用()
  60. da.Fill(ds6) : 合約1_dgv.DataSource = ds6.Tables(0) : conn.Close()
  61. 合約1_dgv.Columns(0).FillWeight = 130 : 合約1_dgv.Columns(表頭(8)).FillWeight = 280 : 合約1_dgv.Columns("簽回").FillWeight = 40 : 合約1_dgv.Columns("審核通過").FillWeight = 40
  62. 合約1_dgv.Columns("停止").FillWeight = 40
  63. For i As Integer = 1 To 38 : 合約1_dgv.Columns(i).Visible = False : Next
  64. For i As Integer = 0 To 合約1_dgv.Rows.Count - 1
  65. If IsDBNull(合約1_dgv("停止", i).Value) = True Then : 合約1_dgv("停止", i).Value = False : End If
  66. If IsDBNull(合約1_dgv("簽回", i).Value) = True Then : 合約1_dgv("簽回", i).Value = False : End If
  67. Next : 合約1_dgv.Columns(表頭(8)).Visible = True
  68. End Sub
  69. Private Sub Set_合約報價明細表1()
  70. Dim ds14 As New DataSet : 報價明細表2_dgv.DataSource = Nothing : ds14.Clear() : 報價明細表2_dgv.Columns.Clear()
  71. 報價明細表2_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  72. 報價明細表2_dgv.ColumnHeadersHeight = 40 : 報價明細表2_dgv.AllowUserToAddRows = False : 報價明細表2_dgv.RowTemplate.Height = 45
  73. 報價明細表2_dgv.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.True
  74. PA = 合約編號_1_tb.Text : SQL_合約報價明細表()
  75. da.Fill(ds14) : 報價明細表2_dgv.DataSource = ds14.Tables(0) : conn.Close()
  76. 報價明細表2_dgv.Columns(0).FillWeight = 50 : 報價明細表2_dgv.Columns(1).FillWeight = 50 : 報價明細表2_dgv.Columns(2).FillWeight = 200
  77. 報價明細表2_dgv.Columns(3).FillWeight = 50 : 報價明細表2_dgv.Columns(4).FillWeight = 50 : 報價明細表2_dgv.Columns(5).FillWeight = 80
  78. 報價明細表2_dgv.Columns(6).FillWeight = 80 : 報價明細表2_dgv.Columns(7).FillWeight = 100 : 報價明細表2_dgv.Columns(8).FillWeight = 50
  79. 報價明細表2_dgv.Columns(34).FillWeight = 80 : 報價明細表2_dgv.Columns(33).FillWeight = 40 : 報價明細表2_dgv.Columns(6).FillWeight = 50
  80. 報價明細表2_dgv.Columns(42).FillWeight = 20 : 報價明細表2_dgv.Columns(43).FillWeight = 20 : 報價明細表2_dgv.Columns(44).FillWeight = 20
  81. 報價明細表2_dgv.Columns(45).FillWeight = 20 : 報價明細表2_dgv.Columns(46).FillWeight = 20 : 報價明細表2_dgv.Columns(47).FillWeight = 20
  82. 報價明細表2_dgv.Columns(48).FillWeight = 20 : 報價明細表2_dgv.Columns(49).FillWeight = 20 : 報價明細表2_dgv.Columns(50).FillWeight = 20
  83. 報價明細表2_dgv.Columns(50).FillWeight = 20 : 報價明細表2_dgv.Columns(表頭(9)).FillWeight = 30 : 報價明細表2_dgv.Columns(表頭(10)).Visible = False
  84. 報價明細表2_dgv.Columns(60).Visible = False : 報價明細表2_dgv.Columns(61).Visible = False : 報價明細表2_dgv.Columns(62).Visible = False
  85. 報價明細表2_dgv.Columns("地點_中").Visible = False : 報價明細表2_dgv.Columns("工資係數").Visible = False
  86. 報價明細表2_dgv.Columns("地點_印").Visible = False : 報價明細表2_dgv.Columns("主項_中").Visible = False : 報價明細表2_dgv.Columns("主項_印").Visible = False
  87. 報價明細表2_dgv.Columns("主名_中").Visible = False : 報價明細表2_dgv.Columns("主名_印").Visible = False : 報價明細表2_dgv.Columns("項名_中").Visible = False
  88. 報價明細表2_dgv.Columns("項名_印").Visible = False : 報價明細表2_dgv.Columns("描述_中").Visible = False : 報價明細表2_dgv.Columns("其他_中").Visible = False
  89. 報價明細表2_dgv.Columns("其他_印").Visible = False : 報價明細表2_dgv.Columns("描述_印").Visible = False : 報價明細表2_dgv.Columns("層級").Visible = False
  90. 報價明細表2_dgv.Columns("存檔").Visible = False
  91. For I As Integer = 0 To 58 : 報價明細表2_dgv.Columns(I).Visible = False : Next
  92. 報價明細表2_dgv.Columns("QTY").DefaultCellStyle.Format = "#,##0"
  93. 報價明細表2_dgv.Columns("UNIT").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  94. 報價明細表2_dgv.Columns("QTY").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  95. 報價明細表2_dgv.Columns("ITEM").Visible = True : 報價明細表2_dgv.Columns("DESCRIPTION").Visible = True : 報價明細表2_dgv.Columns("UNIT").Visible = True
  96. 報價明細表2_dgv.Columns("QTY").Visible = True : 報價明細表2_dgv.Columns(表頭(9)).Visible = True
  97. 報價明細表2_dgv.Columns("ITEM").ReadOnly = True : 報價明細表2_dgv.Columns("DESCRIPTION").ReadOnly = True : 報價明細表2_dgv.Columns("UNIT").ReadOnly = True
  98. 報價明細表2_dgv.Columns("QTY").ReadOnly = True : 報價明細表2_dgv.Columns(表頭(9)).ReadOnly = True
  99. Set_合約選擇加入_勾選項()
  100. 報價明細表2_dgv.Columns(表頭(10)).FillWeight = 30
  101. For i As Integer = 0 To 報價明細表2_dgv.Rows.Count - 1
  102. If 報價明細表2_dgv.Rows(i).Cells(表頭(9)).Value.ToString = "" Then
  103. 報價明細表2_dgv.Rows(i).Cells("D1").Value = False : 報價明細表2_dgv.Rows(i).Cells("D2").Value = False
  104. 報價明細表2_dgv.Rows(i).Cells("D3").Value = False : 報價明細表2_dgv.Rows(i).Cells("D4").Value = False
  105. 報價明細表2_dgv.Rows(i).Cells("D5").Value = False : 報價明細表2_dgv.Rows(i).Cells("D6").Value = False
  106. 報價明細表2_dgv.Rows(i).Cells("D7").Value = False : 報價明細表2_dgv.Rows(i).Cells("D8").Value = False
  107. End If
  108. If 報價明細表2_dgv.Rows(i).Cells(表頭(9)).Value.ToString <> "" Then
  109. If 報價明細表2_dgv.Rows(i).Cells("預設").Value = True Then
  110. 報價明細表2_dgv.Rows(i).Cells("D1").Value = 報價明細表2_dgv.Rows(i).Cells("S1").Value : 報價明細表2_dgv.Rows(i).Cells("D2").Value = 報價明細表2_dgv.Rows(i).Cells("S2").Value
  111. 報價明細表2_dgv.Rows(i).Cells("D3").Value = 報價明細表2_dgv.Rows(i).Cells("S3").Value : 報價明細表2_dgv.Rows(i).Cells("D4").Value = 報價明細表2_dgv.Rows(i).Cells("S4").Value
  112. 報價明細表2_dgv.Rows(i).Cells("D5").Value = 報價明細表2_dgv.Rows(i).Cells("S5").Value : 報價明細表2_dgv.Rows(i).Cells("D6").Value = 報價明細表2_dgv.Rows(i).Cells("S6").Value
  113. 報價明細表2_dgv.Rows(i).Cells("D7").Value = 報價明細表2_dgv.Rows(i).Cells("S7").Value : 報價明細表2_dgv.Rows(i).Cells("D8").Value = 報價明細表2_dgv.Rows(i).Cells("S8").Value
  114. End If
  115. Dim ZA1, ZA2, ZA3, ZA4, ZA5, ZA6, ZA7, ZA8 As String : 物料規格 = ""
  116. If 詳細資料_ch.Checked = True Then
  117. If 報價明細表2_dgv.Rows(i).Cells("A1").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D1").Value = True Then
  118. ZA1 = 報價明細表2_dgv.Rows(i).Cells("AA1").Value.ToString & "=" & 報價明細表2_dgv.Rows(i).Cells("A1").Value.ToString : 物料規格 = ZA1 : End If : End If
  119. If 報價明細表2_dgv.Rows(i).Cells("A2").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D2").Value = True Then
  120. ZA2 = 報價明細表2_dgv.Rows(i).Cells("AA2").Value.ToString & "=" & 報價明細表2_dgv.Rows(i).Cells("A2").Value : If 物料規格 = "" Then
  121. 物料規格 = ZA2 : Else : 物料規格 = 物料規格 + "、" + ZA2 : End If : End If : End If
  122. If 報價明細表2_dgv.Rows(i).Cells("A3").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D3").Value = True Then
  123. ZA3 = 報價明細表2_dgv.Rows(i).Cells("AA3").Value.ToString & "=" & 報價明細表2_dgv.Rows(i).Cells("A3").Value : If 物料規格 = "" Then
  124. 物料規格 = ZA3 : Else : 物料規格 = 物料規格 + "、" + ZA3 : End If : End If : End If
  125. If 報價明細表2_dgv.Rows(i).Cells("A4").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D4").Value = True Then
  126. ZA4 = 報價明細表2_dgv.Rows(i).Cells("AA4").Value.ToString & "=" & 報價明細表2_dgv.Rows(i).Cells("A4").Value : If 物料規格 = "" Then
  127. 物料規格 = ZA4 : Else : 物料規格 = 物料規格 + "、" + ZA4 : End If : End If : End If
  128. If 報價明細表2_dgv.Rows(i).Cells("A5").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D5").Value = True Then
  129. ZA5 = 報價明細表2_dgv.Rows(i).Cells("AA5").Value.ToString & "=" & 報價明細表2_dgv.Rows(i).Cells("A5").Value : If 物料規格 = "" Then
  130. 物料規格 = ZA5 : Else : 物料規格 = 物料規格 + "、" + ZA5 : End If : End If : End If
  131. If 報價明細表2_dgv.Rows(i).Cells("A6").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D6").Value = True Then
  132. ZA6 = 報價明細表2_dgv.Rows(i).Cells("AA6").Value.ToString & "=" & 報價明細表2_dgv.Rows(i).Cells("A6").Value : If 物料規格 = "" Then
  133. 物料規格 = ZA6 : Else : 物料規格 = 物料規格 + "、" + ZA6 : End If : End If : End If
  134. If 報價明細表2_dgv.Rows(i).Cells("A7").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D7").Value = True Then
  135. ZA7 = 報價明細表2_dgv.Rows(i).Cells("AA7").Value.ToString & "=" & 報價明細表2_dgv.Rows(i).Cells("A7").Value : If 物料規格 = "" Then
  136. 物料規格 = ZA7 : Else : 物料規格 = 物料規格 + "、" + ZA7 : End If : End If : End If
  137. If 報價明細表2_dgv.Rows(i).Cells("A8").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D8").Value = True Then
  138. ZA8 = 報價明細表2_dgv.Rows(i).Cells("AA8").Value.ToString & "=" & 報價明細表2_dgv.Rows(i).Cells("A8").Value : If 物料規格 = "" Then
  139. 物料規格 = ZA8 : Else : 物料規格 = 物料規格 + "、" + ZA8 : End If : End If : End If
  140. Else
  141. If 報價明細表2_dgv.Rows(i).Cells("A1").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D1").Value = True Then
  142. ZA1 = 報價明細表2_dgv.Rows(i).Cells("A1").Value.ToString : 物料規格 = ZA1 : End If : End If
  143. If 報價明細表2_dgv.Rows(i).Cells("A2").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D2").Value = True Then
  144. ZA2 = 報價明細表2_dgv.Rows(i).Cells("A2").Value : If 物料規格 = "" Then : 物料規格 = ZA2 : Else : 物料規格 = 物料規格 + "、" + ZA2 : End If : End If : End If
  145. If 報價明細表2_dgv.Rows(i).Cells("A3").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D3").Value = True Then
  146. ZA3 = 報價明細表2_dgv.Rows(i).Cells("A3").Value : If 物料規格 = "" Then : 物料規格 = ZA3 : Else : 物料規格 = 物料規格 + "、" + ZA3 : End If : End If : End If
  147. If 報價明細表2_dgv.Rows(i).Cells("A4").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D4").Value = True Then
  148. ZA4 = 報價明細表2_dgv.Rows(i).Cells("A4").Value : If 物料規格 = "" Then : 物料規格 = ZA4 : Else : 物料規格 = 物料規格 + "、" + ZA4 : End If : End If : End If
  149. If 報價明細表2_dgv.Rows(i).Cells("A5").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D5").Value = True Then
  150. ZA5 = 報價明細表2_dgv.Rows(i).Cells("A5").Value : If 物料規格 = "" Then : 物料規格 = ZA5 : Else : 物料規格 = 物料規格 + "、" + ZA5 : End If : End If : End If
  151. If 報價明細表2_dgv.Rows(i).Cells("A6").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D6").Value = True Then
  152. ZA6 = 報價明細表2_dgv.Rows(i).Cells("A6").Value : If 物料規格 = "" Then : 物料規格 = ZA6 : Else : 物料規格 = 物料規格 + "、" + ZA6 : End If : End If : End If
  153. If 報價明細表2_dgv.Rows(i).Cells("A7").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D7").Value = True Then
  154. ZA7 = 報價明細表2_dgv.Rows(i).Cells("A7").Value : If 物料規格 = "" Then : 物料規格 = ZA7 : Else : 物料規格 = 物料規格 + "、" + ZA7 : End If : End If : End If
  155. If 報價明細表2_dgv.Rows(i).Cells("A8").Value.ToString <> "" Then : If 報價明細表2_dgv.Rows(i).Cells("D8").Value = True Then
  156. ZA8 = 報價明細表2_dgv.Rows(i).Cells("A8").Value : If 物料規格 = "" Then : 物料規格 = ZA8 : Else : 物料規格 = 物料規格 + "、" + ZA8 : End If : End If : End If
  157. End If
  158. If 報價明細表2_dgv.Rows(i).Cells(表頭(9)).Value.ToString <> "" Then
  159. 報價明細表2_dgv.Rows(i).Cells("DESCRIPTION").Value = 報價明細表2_dgv.Rows(i).Cells("品名").Value.ToString & " " & 物料規格
  160. End If
  161. End If : 報價明細表2_dgv.Rows(i).Cells("預設").Value = False
  162. Next
  163. End Sub
  164. Private Sub Set_合約選擇加入_勾選項()
  165. Dim Col As New DataGridViewCheckBoxColumn With {
  166. .FillWeight = 30,
  167. .DataPropertyName = 表頭(10),
  168. .HeaderText = 表頭(10),
  169. .Name = 表頭(10)
  170. }
  171. 報價明細表2_dgv.Columns.Insert(0, Col)
  172. End Sub
  173. Private Sub Set_合約文件圖庫資料庫狀態()
  174. Dim ds9 As New DataSet : 圖庫清單_dgv.DataSource = Nothing : ds9.Clear()
  175. 圖庫清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  176. 圖庫清單_dgv.ColumnHeadersHeight = 25 : 圖庫清單_dgv.AllowUserToAddRows = False
  177. 表頭(165) = "資料庫" : 表頭(166) = "狀態"
  178. SQL_工程文件資料庫管理查詢()
  179. da.Fill(ds9) : 圖庫清單_dgv.DataSource = ds9.Tables(0) : conn.Close()
  180. 圖庫清單_dgv.Columns(0).FillWeight = 100 : 圖庫清單_dgv.Columns(1).FillWeight = 20
  181. End Sub
  182. Private Sub Set_BOM表控制()
  183. Dim ds6 As New DataSet : BOM表控制_dgv.DataSource = Nothing : ds6.Clear()
  184. BOM表控制_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  185. BOM表控制_dgv.ColumnHeadersHeight = 25 : BOM表控制_dgv.AllowUserToAddRows = False : BOM表控制_dgv.RowTemplate.Height = 45
  186. Dim 群組碼 As String
  187. If 群組碼_cb.Text = "%%" Then
  188. 群組碼 = " WHERE (群組碼 IS NULL) OR (群組碼 LIKE N'%%') "
  189. Else
  190. 群組碼 = " WHERE (群組碼 LIKE N'" & 群組碼_cb.Text & "') "
  191. End If
  192. SQL_BOM表控制1(群組碼)
  193. da.Fill(ds6) : BOM表控制_dgv.DataSource = ds6.Tables(0) : conn.Close()
  194. BOM表控制_dgv.Columns(0).FillWeight = 15 : BOM表控制_dgv.Columns(1).FillWeight = 100 : BOM表控制_dgv.Columns(2).Visible = False
  195. BOM表控制_dgv.Columns(0).ReadOnly = True : BOM表控制_dgv.Columns(1).ReadOnly = True
  196. For i As Integer = 0 To BOM表控制_dgv.Rows.Count - 1 : BOM表控制_dgv.Rows(i).Cells("項次").Value = i + 1 : Next
  197. End Sub
  198. Private Sub Set_BOM表明細()
  199. Dim ds6 As New DataSet
  200. BOM表明細_dgv.DataSource = Nothing : ds6.Clear()
  201. BOM表明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  202. BOM表明細_dgv.ColumnHeadersHeight = 25 : BOM表明細_dgv.AllowUserToAddRows = False : BOM表明細_dgv.RowTemplate.Height = 45
  203. SQL_BOM表明細1()
  204. da.Fill(ds6) : BOM表明細_dgv.DataSource = ds6.Tables(0) : conn.Close()
  205. BOM表明細_dgv.Columns(0).FillWeight = 30 : BOM表明細_dgv.Columns(0).Visible = False : BOM表明細_dgv.Columns(1).FillWeight = 30
  206. BOM表明細_dgv.Columns(2).FillWeight = 250 : BOM表明細_dgv.Columns(3).FillWeight = 30 : BOM表明細_dgv.Columns(4).FillWeight = 30
  207. BOM表明細_dgv.Columns(5).Visible = False : BOM表明細_dgv.Columns(6).Visible = False : BOM表明細_dgv.Columns(35).FillWeight = 30
  208. BOM表明細_dgv.Columns(36).Visible = False
  209. For i As Integer = 7 To 34 : BOM表明細_dgv.Columns(i).Visible = False : Next
  210. BOM表明細_dgv.Columns(表頭(5)).DefaultCellStyle.Format = "#,##0"
  211. BOM表明細_dgv.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  212. BOM表明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  213. For i As Integer = 0 To 5 : BOM表明細_dgv.Columns(i).ReadOnly = True : Next
  214. For i As Integer = 3 To 4 : BOM表明細_dgv.Columns(i).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : Next
  215. For i As Integer = 0 To BOM表明細_dgv.Rows.Count - 1
  216. BOM表明細_dgv.Rows(i).Cells(35).Value = False : BOM表明細_dgv.Rows(i).Cells(表頭(2)).Value = i + 1
  217. BOM表明細_dgv.Rows(i).Cells(表頭(5)).Value = BOM表明細_dgv.Rows(i).Cells(36).Value * 計算基數_nud.Value
  218. If BOM表明細_dgv.Rows(i).Cells(表頭(6)).Value.ToString <> "" Then
  219. Dim ZA1, ZA2, ZA3, ZA4, ZA5, ZA6, ZA7, ZA8 As String : 物料規格 = ""
  220. If 詳細資料1_ch.Checked = True Then
  221. If BOM表明細_dgv.Rows(i).Cells("A1").Value.ToString <> "" Then
  222. ZA1 = BOM表明細_dgv.Rows(i).Cells("AA1").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A1").Value.ToString : 物料規格 = ZA1 : End If
  223. If BOM表明細_dgv.Rows(i).Cells("A2").Value.ToString <> "" Then
  224. ZA2 = BOM表明細_dgv.Rows(i).Cells("AA2").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A2").Value
  225. If 物料規格 = "" Then : 物料規格 = ZA2 : Else : 物料規格 = 物料規格 + "、" + ZA2 : End If : End If
  226. If BOM表明細_dgv.Rows(i).Cells("A3").Value.ToString <> "" Then
  227. ZA3 = BOM表明細_dgv.Rows(i).Cells("AA3").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A3").Value
  228. If 物料規格 = "" Then : 物料規格 = ZA3 : Else : 物料規格 = 物料規格 + "、" + ZA3 : End If : End If
  229. If BOM表明細_dgv.Rows(i).Cells("A4").Value.ToString <> "" Then
  230. ZA4 = BOM表明細_dgv.Rows(i).Cells("AA4").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A4").Value
  231. If 物料規格 = "" Then : 物料規格 = ZA4 : Else : 物料規格 = 物料規格 + "、" + ZA4 : End If : End If
  232. If BOM表明細_dgv.Rows(i).Cells("A5").Value.ToString <> "" Then
  233. ZA5 = BOM表明細_dgv.Rows(i).Cells("AA5").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A5").Value
  234. If 物料規格 = "" Then : 物料規格 = ZA5 : Else : 物料規格 = 物料規格 + "、" + ZA5 : End If : End If
  235. If BOM表明細_dgv.Rows(i).Cells("A6").Value.ToString <> "" Then
  236. ZA6 = BOM表明細_dgv.Rows(i).Cells("AA6").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A6").Value
  237. If 物料規格 = "" Then : 物料規格 = ZA6 : Else : 物料規格 = 物料規格 + "、" + ZA6 : End If : End If
  238. If BOM表明細_dgv.Rows(i).Cells("A7").Value.ToString <> "" Then
  239. ZA7 = BOM表明細_dgv.Rows(i).Cells("AA7").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A7").Value
  240. If 物料規格 = "" Then : 物料規格 = ZA7 : Else : 物料規格 = 物料規格 + "、" + ZA7 : End If : End If
  241. If BOM表明細_dgv.Rows(i).Cells("A8").Value.ToString <> "" Then
  242. ZA8 = BOM表明細_dgv.Rows(i).Cells("AA8").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A8").Value
  243. If 物料規格 = "" Then : 物料規格 = ZA8 : Else : 物料規格 = 物料規格 + "、" + ZA8 : End If : End If
  244. Else
  245. If BOM表明細_dgv.Rows(i).Cells("A1").Value.ToString <> "" Then
  246. ZA1 = BOM表明細_dgv.Rows(i).Cells("A1").Value.ToString : 物料規格 = ZA1 : End If
  247. If BOM表明細_dgv.Rows(i).Cells("A2").Value.ToString <> "" Then
  248. ZA2 = BOM表明細_dgv.Rows(i).Cells("A2").Value : If 物料規格 = "" Then : 物料規格 = ZA2 : Else : 物料規格 = 物料規格 + "、" + ZA2 : End If : End If
  249. If BOM表明細_dgv.Rows(i).Cells("A3").Value.ToString <> "" Then
  250. ZA3 = BOM表明細_dgv.Rows(i).Cells("A3").Value : If 物料規格 = "" Then : 物料規格 = ZA3 : Else : 物料規格 = 物料規格 + "、" + ZA3 : End If : End If
  251. If BOM表明細_dgv.Rows(i).Cells("A4").Value.ToString <> "" Then
  252. ZA4 = BOM表明細_dgv.Rows(i).Cells("A4").Value : If 物料規格 = "" Then : 物料規格 = ZA4 : Else : 物料規格 = 物料規格 + "、" + ZA4 : End If : End If
  253. If BOM表明細_dgv.Rows(i).Cells("A5").Value.ToString <> "" Then
  254. ZA5 = BOM表明細_dgv.Rows(i).Cells("A5").Value : If 物料規格 = "" Then : 物料規格 = ZA5 : Else : 物料規格 = 物料規格 + "、" + ZA5 : End If : End If
  255. If BOM表明細_dgv.Rows(i).Cells("A6").Value.ToString <> "" Then
  256. ZA6 = BOM表明細_dgv.Rows(i).Cells("A6").Value : If 物料規格 = "" Then : 物料規格 = ZA6 : Else : 物料規格 = 物料規格 + "、" + ZA6 : End If : End If
  257. If BOM表明細_dgv.Rows(i).Cells("A7").Value.ToString <> "" Then
  258. ZA7 = BOM表明細_dgv.Rows(i).Cells("A7").Value : If 物料規格 = "" Then : 物料規格 = ZA7 : Else : 物料規格 = 物料規格 + "、" + ZA7 : End If : End If
  259. If BOM表明細_dgv.Rows(i).Cells("A8").Value.ToString <> "" Then
  260. ZA8 = BOM表明細_dgv.Rows(i).Cells("A8").Value : If 物料規格 = "" Then : 物料規格 = ZA8 : Else : 物料規格 = 物料規格 + "、" + ZA8 : End If : End If
  261. End If
  262. If BOM表明細_dgv.Rows(i).Cells(表頭(6)).Value.ToString <> "" Then
  263. BOM表明細_dgv.Rows(i).Cells(表頭(3)).Value = BOM表明細_dgv.Rows(i).Cells("品名").Value.ToString & " " & 物料規格
  264. End If
  265. End If
  266. Next
  267. End Sub
  268. Private Sub Set_合約報價係數_範本()
  269. Dim ds16 As New DataSet
  270. 報價係數1_dgv.DataSource = Nothing : ds16.Clear()
  271. 報價係數1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  272. 報價係數1_dgv.ColumnHeadersHeight = 25 : 報價係數1_dgv.AllowUserToAddRows = False
  273. PA = "" : SQL_合約報價係數()
  274. da.Fill(ds16) : 報價係數1_dgv.DataSource = ds16.Tables(0) : conn.Close()
  275. 報價係數1_dgv.Columns(0).Visible = False : 報價係數1_dgv.Columns(1).Visible = False : 報價係數1_dgv.Columns(2).FillWeight = 80
  276. 報價係數1_dgv.Columns(3).FillWeight = 40 : 報價係數1_dgv.Columns(4).FillWeight = 30
  277. 報價係數1_dgv.Columns(3).DefaultCellStyle.Format = "#,##0.00"
  278. 報價係數1_dgv.Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  279. 報價係數1_dgv.Columns(2).ReadOnly = True : 報價係數1_dgv.Columns(3).ReadOnly = True : 報價係數1_dgv.Columns(4).ReadOnly = True
  280. End Sub
  281. Private Sub Set_合約報價係數()
  282. Dim ds16 As New DataSet
  283. 報價係數_dgv.DataSource = Nothing : ds16.Clear()
  284. 報價係數_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  285. 報價係數_dgv.ColumnHeadersHeight = 25 : 報價係數_dgv.AllowUserToAddRows = False
  286. SQL_合約報價係數()
  287. da.Fill(ds16) : 報價係數_dgv.DataSource = ds16.Tables(0) : conn.Close()
  288. If 合約編號_tb.Text = "" Then : Else
  289. Dim 新增係數 As Boolean
  290. For i As Integer = 0 To 報價係數1_dgv.Rows.Count - 1
  291. 新增係數 = True
  292. For ii As Integer = 0 To 報價係數_dgv.Rows.Count - 1
  293. If 報價係數1_dgv.Rows(i).Cells("項目").Value.ToString = 報價係數_dgv.Rows(ii).Cells("項目").Value.ToString Then : 新增係數 = False : Exit For
  294. End If
  295. Next
  296. If 新增係數 = True Then : PA = 合約編號_tb.Text
  297. PA2 = 報價係數1_dgv.Rows(i).Cells("項目").Value.ToString : PA3 = 報價係數1_dgv.Rows(i).Cells("係數").Value.ToString
  298. PA4 = 報價係數1_dgv.Rows(i).Cells("單位").Value.ToString : 係數流水號() : SQL_合約報價係數_新增()
  299. End If
  300. Next
  301. End If
  302. 報價係數_dgv.DataSource = Nothing : ds16.Clear()
  303. 報價係數_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  304. 報價係數_dgv.ColumnHeadersHeight = 25 : 報價係數_dgv.AllowUserToAddRows = False
  305. SQL_合約報價係數()
  306. da.Fill(ds16) : 報價係數_dgv.DataSource = ds16.Tables(0) : conn.Close()
  307. 報價係數_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  308. 報價係數_dgv.Columns(0).Visible = False : 報價係數_dgv.Columns(1).Visible = False : 報價係數_dgv.Columns(2).FillWeight = 80
  309. 報價係數_dgv.Columns(3).FillWeight = 40 : 報價係數_dgv.Columns(4).FillWeight = 30
  310. 報價係數_dgv.Columns(3).DefaultCellStyle.Format = "#,##0.00"
  311. 報價係數_dgv.Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  312. 報價係數_dgv.Columns(2).ReadOnly = True : 報價係數_dgv.Columns(3).ReadOnly = True : 報價係數_dgv.Columns(4).ReadOnly = True
  313. 工資與材料系數清單()
  314. End Sub
  315. Private Sub 工資與材料系數清單()
  316. 係數清單_cb.Items.Clear() : 係數清單_cb.Items.Add("")
  317. For I As Integer = 0 To 報價係數_dgv.Rows.Count - 1
  318. Dim 項目值 As String = 報價係數_dgv.Rows(I).Cells("項目").Value.ToString : If Not 項目值 Like "*工資*" And Not 項目值 Like "*工资*" Then : 係數清單_cb.Items.Add(項目值) : End If
  319. Next
  320. 工資系數_cb.Items.Clear() : 工資系數_cb.Items.Add("")
  321. For I As Integer = 0 To 報價係數_dgv.Rows.Count - 1
  322. If 報價係數_dgv.Rows(I).Cells("單位").Value.ToString = "%" Then
  323. Dim 項目值 As String = 報價係數_dgv.Rows(I).Cells("項目").Value.ToString : If 項目值 Like "*工資*" Or 項目值 Like "*工资*" Then : 工資系數_cb.Items.Add(項目值) : End If
  324. End If
  325. Next
  326. 工資單價_cb.Items.Clear() : 工資單價_cb.Items.Add("")
  327. For I As Integer = 0 To 報價係數_dgv.Rows.Count - 1
  328. If 報價係數_dgv.Rows(I).Cells("單位").Value.ToString = "RP" Then
  329. Dim 項目值 As String = 報價係數_dgv.Rows(I).Cells("項目").Value.ToString : If 項目值 Like "*工資*" Or 項目值 Like "*工资*" Then : 工資單價_cb.Items.Add(項目值) : End If
  330. End If
  331. Next
  332. End Sub
  333. Private Sub Set_合約報價總表()
  334. Dim ds14, ds15 As New DataSet
  335. 報價總表_dgv.DataSource = Nothing : ds15.Clear()
  336. 報價總表_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  337. 報價總表_dgv.ColumnHeadersHeight = 40 : 報價總表_dgv.AllowUserToAddRows = False : 報價總表_dgv.RowTemplate.Height = 45
  338. 報價總表_dgv.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.True
  339. 報價總表_存_dgv.DataSource = Nothing : ds14.Clear()
  340. 報價總表_存_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  341. 報價總表_存_dgv.ColumnHeadersHeight = 40 : 報價總表_存_dgv.AllowUserToAddRows = False : 報價總表_存_dgv.RowTemplate.Height = 45
  342. 報價總表_存_dgv.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.True
  343. SQL_合約報價總表() : 啟動運算 = False
  344. da.Fill(ds15) : 報價總表_dgv.DataSource = ds15.Tables(0) : conn.Close()
  345. da.Fill(ds14) : 報價總表_存_dgv.DataSource = ds14.Tables(0) : conn.Close()
  346. 報價總表_dgv.Columns(0).Visible = False : 報價總表_dgv.Columns(8).Visible = False : 報價總表_dgv.Columns(10).Visible = False
  347. 報價總表_dgv.Columns(12).Visible = False : 報價總表_dgv.Columns("存檔").Visible = False
  348. 報價總表_dgv.Columns(0).FillWeight = 50 : 報價總表_dgv.Columns(1).FillWeight = 50 : 報價總表_dgv.Columns(2).FillWeight = 210
  349. 報價總表_dgv.Columns(3).FillWeight = 50 : 報價總表_dgv.Columns(4).FillWeight = 50 : 報價總表_dgv.Columns(5).FillWeight = 80
  350. 報價總表_dgv.Columns(6).FillWeight = 80 : 報價總表_dgv.Columns(7).FillWeight = 90 : 報價總表_dgv.Columns(9).FillWeight = 50
  351. 報價總表_dgv.Columns(10).FillWeight = 40 : 報價總表_dgv.Columns(11).FillWeight = 40 : 報價總表_dgv.Columns(12).FillWeight = 40
  352. 報價總表_dgv.Columns(13).FillWeight = 40
  353. For i As Integer = 4 To 6 : 報價總表_dgv.Columns(i).DefaultCellStyle.Format = "#,##0" : Next
  354. For i As Integer = 4 To 6 : 報價總表_dgv.Columns(i).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : Next
  355. For i As Integer = 0 To 7 : 報價總表_dgv.Columns(i).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter : Next
  356. '報價總表_dgv.Columns(1).ReadOnly = True
  357. 報價總表_dgv.Columns(2).ReadOnly = True : 報價總表_dgv.Columns(6).ReadOnly = True
  358. 報價總表_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  359. 啟動運算 = True : 報價總表_dgv_自動計算()
  360. If DGV位置1.Value >= 報價總表_dgv.Rows.Count Then : DGV位置1.Value = 報價總表_dgv.Rows.Count - 1 : End If
  361. If DGV位置1.Value > 0 Then : 報價總表_dgv.CurrentCell = 報價總表_dgv.Rows(DGV位置1.Value).Cells(1) : End If
  362. Dim mycol1 As DataGridViewImageColumn = 報價總表_dgv.Columns(10) : mycol1.ImageLayout = DataGridViewImageCellLayout.Zoom
  363. Dim mycol2 As DataGridViewImageColumn = 報價總表_dgv.Columns(11) : mycol2.ImageLayout = DataGridViewImageCellLayout.Zoom
  364. Dim mycol3 As DataGridViewImageColumn = 報價總表_dgv.Columns(12) : mycol3.ImageLayout = DataGridViewImageCellLayout.Zoom
  365. Dim mycol4 As DataGridViewImageColumn = 報價總表_dgv.Columns(13) : mycol4.ImageLayout = DataGridViewImageCellLayout.Zoom
  366. For i As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  367. 報價總表_dgv.Rows(i).Cells(10).Value = My.Resources.system
  368. 報價總表_dgv.Rows(i).Cells(11).Value = My.Resources.add_2
  369. 報價總表_dgv.Rows(i).Cells(12).Value = My.Resources.Edit_Text
  370. 報價總表_dgv.Rows(i).Cells(13).Value = My.Resources.GarbageEmpty
  371. 報價總表_dgv.Rows(i).Cells("存檔").Value = False
  372. Next
  373. End Sub
  374. Private Sub Set_合約報價明細表_間距調整()
  375. If 小間距1_ch.Created = True Then : 報價明細表1_dgv.RowTemplate.Height = 25
  376. ElseIf 中間距1_ch.Created = True Then : 報價明細表1_dgv.RowTemplate.Height = 45
  377. ElseIf 大間距1_ch.Created = True Then : 報價明細表1_dgv.RowTemplate.Height = 65 : End If
  378. End Sub
  379. Private Sub 小間距1_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 小間距1_ch.Click
  380. 小間距1_ch.Checked = True : 中間距1_ch.Checked = False : 大間距1_ch.Checked = False : Set_合約報價明細表_編輯用()
  381. End Sub
  382. Private Sub 中間距1_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 中間距1_ch.Click
  383. 小間距1_ch.Checked = False : 中間距1_ch.Checked = True : 大間距1_ch.Checked = False : Set_合約報價明細表_編輯用()
  384. End Sub
  385. Private Sub 大間距1_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 大間距1_ch.Click
  386. 小間距1_ch.Checked = False : 中間距1_ch.Checked = False : 大間距1_ch.Checked = True : Set_合約報價明細表_編輯用()
  387. End Sub
  388. Private Sub Set_合約報價明細表_編輯用()
  389. Dim ds15, ds16 As New DataSet
  390. 報價明細表1_dgv.DataSource = Nothing : ds15.Clear()
  391. 報價明細表1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  392. 報價明細表1_dgv.ColumnHeadersHeight = 25 : 報價明細表1_dgv.AllowUserToAddRows = False
  393. Set_合約報價明細表_間距調整()
  394. 報價明細表1_dgv.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.True
  395. 報價明細表3_dgv.DataSource = Nothing : ds15.Clear()
  396. 報價明細表3_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  397. 報價明細表3_dgv.ColumnHeadersHeight = 25 : 報價明細表3_dgv.AllowUserToAddRows = False
  398. Set_合約報價明細表_間距調整()
  399. PA = 合約編號_tb.Text
  400. SQL_合約報價明細表_編輯用1()
  401. da.Fill(ds15) : 報價明細表1_dgv.DataSource = ds15.Tables(0) : conn.Close()
  402. SQL_合約報價明細表_編輯用2()
  403. da.Fill(ds16) : 報價明細表3_dgv.DataSource = ds16.Tables(0) : conn.Close()
  404. 報價明細表1_dgv.Columns("流水號").FillWeight = 50 : 報價明細表1_dgv.Columns(6).FillWeight = 60 : 報價明細表1_dgv.Columns(2).FillWeight = 200
  405. 報價明細表1_dgv.Columns(1).FillWeight = 40 : 報價明細表1_dgv.Columns(表頭(10)).Visible = False
  406. 報價明細表3_dgv.Columns("流水號").FillWeight = 50 : 報價明細表3_dgv.Columns(6).FillWeight = 60 : 報價明細表3_dgv.Columns(2).FillWeight = 200
  407. 報價明細表3_dgv.Columns(1).FillWeight = 40 : 報價明細表3_dgv.Columns(表頭(10)).Visible = False
  408. 報價明細表1_dgv.Columns(6).DefaultCellStyle.Format = "#,##0" : 報價明細表3_dgv.Columns(6).DefaultCellStyle.Format = "#,##0"
  409. 報價明細表1_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  410. 報價明細表3_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  411. For i As Integer = 0 To 62 : 報價明細表1_dgv.Columns(i).Visible = False : Next : For i As Integer = 0 To 61 : 報價明細表3_dgv.Columns(i).Visible = False : Next
  412. 報價明細表1_dgv.Columns(1).Visible = True : 報價明細表1_dgv.Columns(2).Visible = True : 報價明細表1_dgv.Columns(6).Visible = False
  413. 報價明細表1_dgv.Columns(5).Visible = False : 報價明細表1_dgv.Columns(4).Visible = False : 報價明細表1_dgv.Columns("Dele").Visible = False
  414. 報價明細表3_dgv.Columns(1).Visible = True : 報價明細表3_dgv.Columns(2).Visible = True : 報價明細表3_dgv.Columns(6).Visible = True
  415. 報價明細表3_dgv.Columns(5).Visible = False : 報價明細表3_dgv.Columns(4).Visible = False : 報價明細表3_dgv.Columns("流水號").Visible = False : 報價明細表3_dgv.Columns("Dele").Visible = False
  416. 報價明細表1_dgv.Columns(1).ReadOnly = True : 報價明細表1_dgv.Columns(2).ReadOnly = True : 報價明細表1_dgv.Columns(4).ReadOnly = True : 報價明細表1_dgv.Columns(5).ReadOnly = True
  417. 報價明細表1_dgv.Columns(6).ReadOnly = True : 報價明細表1_dgv.Columns(10).ReadOnly = True : 報價明細表1_dgv.Columns(11).ReadOnly = True : 報價明細表1_dgv.Columns(12).ReadOnly = True
  418. 報價明細表1_dgv.Columns(14).ReadOnly = True : 報價明細表1_dgv.Columns(15).ReadOnly = True : 報價明細表1_dgv.Columns(16).ReadOnly = True : 報價明細表1_dgv.Columns(17).ReadOnly = True
  419. 報價明細表3_dgv.Columns(1).ReadOnly = True : 報價明細表3_dgv.Columns(2).ReadOnly = True : 報價明細表3_dgv.Columns(4).ReadOnly = True : 報價明細表3_dgv.Columns(5).ReadOnly = True
  420. 報價明細表3_dgv.Columns(6).ReadOnly = True : 報價明細表3_dgv.Columns(10).ReadOnly = True : 報價明細表3_dgv.Columns(11).ReadOnly = True : 報價明細表3_dgv.Columns(12).ReadOnly = True
  421. 報價明細表3_dgv.Columns(14).ReadOnly = True : 報價明細表3_dgv.Columns(15).ReadOnly = True : 報價明細表3_dgv.Columns(16).ReadOnly = True : 報價明細表3_dgv.Columns(17).ReadOnly = True
  422. End Sub
  423. Private Sub Set_合約報價明細表()
  424. Dim ds14, ds15 As New DataSet
  425. 報價明細表_dgv.DataSource = Nothing : ds14.Clear()
  426. 報價明細表_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  427. 報價明細表_dgv.ColumnHeadersHeight = 40 : 報價明細表_dgv.AllowUserToAddRows = False : 報價明細表_dgv.RowTemplate.Height = 45
  428. 報價明細表_dgv.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.True
  429. 報價明細表_存_dgv.DataSource = Nothing : ds15.Clear()
  430. 報價明細表_存_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  431. 報價明細表_存_dgv.ColumnHeadersHeight = 40 : 報價明細表_存_dgv.AllowUserToAddRows = False : 報價明細表_存_dgv.RowTemplate.Height = 45
  432. 報價明細表_存_dgv.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.True
  433. PA = 合約編號_tb.Text
  434. SQL_合約報價明細表()
  435. da.Fill(ds14) : 報價明細表_dgv.DataSource = ds14.Tables(0)
  436. da.Fill(ds15) : 報價明細表_存_dgv.DataSource = ds15.Tables(0)
  437. If 深色風格 = False Then
  438. 報價明細表_dgv.Columns("工資成本單價").DefaultCellStyle.ForeColor = Color.Red : 報價明細表_dgv.Columns("工資成本後價").DefaultCellStyle.ForeColor = Color.Red
  439. 報價明細表_dgv.Columns("工資報價單價").DefaultCellStyle.ForeColor = Color.Red : 報價明細表_dgv.Columns("工資報價後價").DefaultCellStyle.ForeColor = Color.Red
  440. 報價明細表_dgv.Columns("材料成本單價").DefaultCellStyle.ForeColor = Color.Green : 報價明細表_dgv.Columns("材料成本後價").DefaultCellStyle.ForeColor = Color.Green
  441. 報價明細表_dgv.Columns("材料報價單價").DefaultCellStyle.ForeColor = Color.Green : 報價明細表_dgv.Columns("材料報價後價").DefaultCellStyle.ForeColor = Color.Green
  442. Else
  443. 報價明細表_dgv.Columns("工資成本單價").DefaultCellStyle.ForeColor = Color.LightPink : 報價明細表_dgv.Columns("工資成本後價").DefaultCellStyle.ForeColor = Color.LightPink
  444. 報價明細表_dgv.Columns("工資報價單價").DefaultCellStyle.ForeColor = Color.LightPink : 報價明細表_dgv.Columns("工資報價後價").DefaultCellStyle.ForeColor = Color.LightPink
  445. 報價明細表_dgv.Columns("材料成本單價").DefaultCellStyle.ForeColor = Color.LightGreen : 報價明細表_dgv.Columns("材料成本後價").DefaultCellStyle.ForeColor = Color.LightGreen
  446. 報價明細表_dgv.Columns("材料報價單價").DefaultCellStyle.ForeColor = Color.LightGreen : 報價明細表_dgv.Columns("材料報價後價").DefaultCellStyle.ForeColor = Color.LightGreen
  447. End If
  448. 報價明細表_dgv.Columns(4).DefaultCellStyle.Format = "#,##0.0"
  449. For i As Integer = 5 To 6 : 報價明細表_dgv.Columns(i).DefaultCellStyle.Format = "#,##0" : Next
  450. For i As Integer = 9 To 17 : 報價明細表_dgv.Columns(i).DefaultCellStyle.Format = "#,##0" : Next
  451. 報價明細表_dgv.Columns(8).DefaultCellStyle.Format = "#,##0.00"
  452. For i As Integer = 3 To 6 : 報價明細表_dgv.Columns(i).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : Next
  453. For i As Integer = 8 To 17 : 報價明細表_dgv.Columns(i).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : Next
  454. For i As Integer = 10 To 12
  455. If 深色風格 = False Then : 報價明細表_dgv.Columns(i).DefaultCellStyle.BackColor = Color.MistyRose
  456. Else : 報價明細表_dgv.Columns(i).DefaultCellStyle.BackColor = Color.Navy : End If
  457. Next
  458. For i As Integer = 14 To 16
  459. If 深色風格 = False Then : 報價明細表_dgv.Columns(i).DefaultCellStyle.BackColor = Color.MistyRose
  460. Else : 報價明細表_dgv.Columns(i).DefaultCellStyle.BackColor = Color.Navy : End If
  461. Next
  462. For I As Integer = 18 To 58 : 報價明細表_dgv.Columns(I).Visible = False : Next
  463. 報價明細表_dgv.Columns(0).Visible = False : 報價明細表_dgv.Columns("存檔").Visible = False : 報價明細表_dgv.Columns("層級").Visible = False
  464. 報價明細表_dgv.Columns("Save").Visible = False : 報價明細表_dgv.Columns("不計").Visible = False : 報價明細表_dgv.Columns("地點_中").Visible = False
  465. 報價明細表_dgv.Columns("地點_印").Visible = False : 報價明細表_dgv.Columns("主項_中").Visible = False : 報價明細表_dgv.Columns("主項_印").Visible = False
  466. 報價明細表_dgv.Columns("主名_中").Visible = False : 報價明細表_dgv.Columns("主名_印").Visible = False : 報價明細表_dgv.Columns("項名_中").Visible = False
  467. 報價明細表_dgv.Columns("項名_印").Visible = False : 報價明細表_dgv.Columns("描述_中").Visible = False : 報價明細表_dgv.Columns("其他_中").Visible = False
  468. 報價明細表_dgv.Columns("其他_印").Visible = False : 報價明細表_dgv.Columns("描述_印").Visible = False
  469. 報價明細表_dgv.EditMode = DataGridViewEditMode.EditOnEnter : 報價明細表1_dgv.EditMode = DataGridViewEditMode.EditOnEnter : 報價明細表3_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  470. '報價明細表_dgv.Columns(1).ReadOnly = True
  471. 報價明細表_dgv.Columns(2).ReadOnly = True : 報價明細表_dgv.Columns(4).ReadOnly = True : 報價明細表_dgv.Columns(5).ReadOnly = True
  472. 報價明細表_dgv.Columns(6).ReadOnly = True : 報價明細表_dgv.Columns(10).ReadOnly = True : 報價明細表_dgv.Columns(11).ReadOnly = True : 報價明細表_dgv.Columns(12).ReadOnly = True
  473. 報價明細表_dgv.Columns(14).ReadOnly = True : 報價明細表_dgv.Columns(15).ReadOnly = True : 報價明細表_dgv.Columns(16).ReadOnly = True : 報價明細表_dgv.Columns(17).ReadOnly = True
  474. 報價明細表_dgv_物料顯示() : 啟動運算 = True : 報價明細表_dgv_自動計算()
  475. If DGV位置2.Value >= 報價明細表_dgv.Rows.Count Then : DGV位置2.Value = 報價明細表_dgv.Rows.Count - 1 : End If
  476. If DGV位置2.Value > 0 Then : 報價明細表_dgv.CurrentCell = 報價明細表_dgv.Rows(DGV位置2.Value).Cells(1) : End If
  477. Dim mycol1 As DataGridViewImageColumn = 報價明細表_dgv.Columns("Add") : mycol1.ImageLayout = DataGridViewImageCellLayout.Zoom
  478. Dim mycol2 As DataGridViewImageColumn = 報價明細表_dgv.Columns("Save") : mycol2.ImageLayout = DataGridViewImageCellLayout.Zoom
  479. Dim mycol3 As DataGridViewImageColumn = 報價明細表_dgv.Columns("Dele") : mycol3.ImageLayout = DataGridViewImageCellLayout.Zoom
  480. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  481. 報價明細表_dgv.Rows(i).Cells(表頭(10)).Value = False : 報價明細表_dgv.Rows(i).Cells("Add").Value = My.Resources.add_2
  482. 報價明細表_dgv.Rows(i).Cells("Save").Value = My.Resources.SAVER : 報價明細表_dgv.Rows(i).Cells("Dele").Value = My.Resources.GarbageEmpty
  483. 報價明細表_dgv.Rows(i).Cells("存檔").Value = False
  484. Next
  485. Set_合約報價明細表格式() : 重新排序()
  486. If 利潤表_ch.Checked = True Then : Set_報價明細表_dgv_利潤表開啟() : Else : Set_報價明細表_dgv_利潤表關閉() : End If
  487. 報價明細表_dgv.Sort(報價明細表_dgv.Columns(0), System.ComponentModel.ListSortDirection.Ascending)
  488. Set_合約報價明細表_編輯用()
  489. End Sub
  490. Private Sub Set_合約報價明細表格式()
  491. 報價明細表_dgv.Columns(0).FillWeight = 45 : 報價明細表_dgv.Columns(1).FillWeight = 45 : 報價明細表_dgv.Columns(2).FillWeight = 200
  492. 報價明細表_dgv.Columns(3).FillWeight = 45 : 報價明細表_dgv.Columns(4).FillWeight = 45 : 報價明細表_dgv.Columns(7).FillWeight = 120
  493. 報價明細表_dgv.Columns(8).FillWeight = 50
  494. Dim FG As Integer = 50
  495. 報價明細表_dgv.Columns(5).FillWeight = FG : 報價明細表_dgv.Columns(6).FillWeight = FG : 報價明細表_dgv.Columns(9).FillWeight = FG
  496. 報價明細表_dgv.Columns(10).FillWeight = FG : 報價明細表_dgv.Columns(11).FillWeight = FG : 報價明細表_dgv.Columns(12).FillWeight = FG
  497. 報價明細表_dgv.Columns(13).FillWeight = FG : 報價明細表_dgv.Columns(14).FillWeight = FG : 報價明細表_dgv.Columns(15).FillWeight = FG
  498. 報價明細表_dgv.Columns(16).FillWeight = FG : 報價明細表_dgv.Columns(17).FillWeight = FG
  499. 報價明細表_dgv.Columns(34).FillWeight = 80 : 報價明細表_dgv.Columns(33).FillWeight = 30
  500. 報價明細表_dgv.Columns(42).FillWeight = 20 : 報價明細表_dgv.Columns(43).FillWeight = 20 : 報價明細表_dgv.Columns(44).FillWeight = 20
  501. 報價明細表_dgv.Columns(45).FillWeight = 20 : 報價明細表_dgv.Columns(46).FillWeight = 20 : 報價明細表_dgv.Columns(47).FillWeight = 20
  502. 報價明細表_dgv.Columns(48).FillWeight = 20 : 報價明細表_dgv.Columns(49).FillWeight = 20 : 報價明細表_dgv.Columns(50).FillWeight = 20
  503. 報價明細表_dgv.Columns(60).FillWeight = 30 : 報價明細表_dgv.Columns(61).FillWeight = 30 : 報價明細表_dgv.Columns(62).FillWeight = 30
  504. 報價明細表_dgv.Columns(7).Visible = True : 報價明細表_dgv.Columns(59).Visible = False
  505. If 利潤表_ch.Checked = False Then : 報價明細表_dgv.Columns(表頭(10)).FillWeight = 20 : Else : 報價明細表_dgv.Columns(表頭(10)).FillWeight = 20 : End If
  506. 報價明細表_dgv.Columns("不計").Visible = False : 報價明細表_dgv.Columns("Add").Visible = False : 報價明細表_dgv.Columns("Dele").Visible = False
  507. 報價明細表_dgv.Columns("工資單價").FillWeight = 40 : 報價明細表_dgv.Columns("工資單價").ReadOnly = True ': 報價明細表_dgv.Columns("工資單價").Visible = False
  508. 報價明細表_dgv.Columns("工資係數").FillWeight = 40 : 報價明細表_dgv.Columns("工資係數").ReadOnly = True ': 報價明細表_dgv.Columns("工資係數").Visible = False
  509. 報價明細表_dgv.Columns("材料係數").FillWeight = 40 : 報價明細表_dgv.Columns("材料係數").ReadOnly = True ': 報價明細表_dgv.Columns("材料係數").Visible = False
  510. End Sub
  511. Private Sub Set_報價明細表_dgv_利潤表關閉()
  512. If 報價明細表_dgv.Rows.Count > 0 Then
  513. 利潤表_ch.Checked = False : For i As Integer = 8 To 17 : 報價明細表_dgv.Columns(i).Visible = False : Next
  514. 報價明細表_dgv.Columns(33).Visible = False : 報價明細表_dgv.Columns(7).Visible = True : 報價明細表_dgv.Columns(4).Visible = True
  515. 報價明細表_dgv.Columns("不計").Visible = False : 報價明細表_dgv.Columns("Add").Visible = False : 報價明細表_dgv.Columns("Dele").Visible = False
  516. 報價明細表_dgv.Columns("工資係數").Visible = False : 報價明細表_dgv.Columns("材料係數").Visible = False : 報價明細表_dgv.Columns("工資單價").Visible = False
  517. End If
  518. End Sub
  519. Private Sub Set_報價明細表_dgv_利潤表開啟()
  520. If 報價明細表_dgv.Rows.Count > 0 Then
  521. For I As Integer = 43 To 50 : 報價明細表_dgv.Columns(I).Visible = False : Next
  522. 報價明細表_dgv.Columns(8).Visible = True : 報價明細表_dgv.Columns(17).Visible = True : 報價明細表_dgv.Columns(33).Visible = True
  523. 報價明細表_dgv.Columns(4).Visible = False : 利潤表_ch.Checked = True
  524. If 工資_ch.Checked = True Then : For i As Integer = 9 To 12 : 報價明細表_dgv.Columns(i).Visible = True : Next
  525. Else : For i As Integer = 9 To 12 : 報價明細表_dgv.Columns(i).Visible = False : Next : End If
  526. If 材料_ch.Checked = True Then : For i As Integer = 13 To 16 : 報價明細表_dgv.Columns(i).Visible = True : Next
  527. Else : For i As Integer = 13 To 16 : 報價明細表_dgv.Columns(i).Visible = False : Next : End If
  528. 報價明細表_dgv.Columns("不計").Visible = False : 報價明細表_dgv.Columns("Add").Visible = False : 報價明細表_dgv.Columns("Dele").Visible = False
  529. 報價明細表_dgv.Columns("工資係數").Visible = True : 報價明細表_dgv.Columns("材料係數").Visible = True : 報價明細表_dgv.Columns("工資單價").Visible = True
  530. End If
  531. End Sub
  532. Private Sub Set_合約清單()
  533. Dim ds6 As New DataSet : 合約_dgv.DataSource = Nothing : ds6.Clear()
  534. 合約_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  535. 合約_dgv.ColumnHeadersHeight = 25 : 合約_dgv.AllowUserToAddRows = False
  536. PA = 關鍵字搜尋_tb.Text : PA46 = 合約編號1_cb.Text : PA47 = 工程期1_ch.Text
  537. If 待送報價_ch.Checked = True And 待審報價_ch.Checked = False And 報價放行_ch.Checked = False And
  538. 作廢報價_ch.Checked = False And 報價簽回_ch.Checked = False And 合約簽回_ch.Checked = False Then
  539. SQL6 = " AND (合約停止 = 1) AND (作廢 = 0)"
  540. ElseIf 待送報價_ch.Checked = False And 待審報價_ch.Checked = True And 報價放行_ch.Checked = False And
  541. 作廢報價_ch.Checked = False And 報價簽回_ch.Checked = False And 合約簽回_ch.Checked = False Then
  542. SQL6 = " AND (合約停止 = 0 OR 合約停止 IS NULL) AND (報價放行 = 0 OR 報價放行 IS NULL) AND (作廢 = 0)"
  543. ElseIf 待送報價_ch.Checked = False And 待審報價_ch.Checked = False And 報價放行_ch.Checked = True And
  544. 作廢報價_ch.Checked = False And 報價簽回_ch.Checked = False And 合約簽回_ch.Checked = False Then
  545. SQL6 = " AND (合約停止 = 0 OR 合約停止 IS NULL) AND (報價放行 = 1) AND (報價簽回 = 0 OR 報價簽回 IS NULL OR 合約簽回 = 0 OR 合約簽回 IS NULL) AND (作廢 = 0)"
  546. ElseIf 待送報價_ch.Checked = False And 待審報價_ch.Checked = False And 報價放行_ch.Checked = False And
  547. 作廢報價_ch.Checked = False And 報價簽回_ch.Checked = True And 合約簽回_ch.Checked = False Then
  548. SQL6 = " AND (合約停止 = 0 OR 合約停止 IS NULL) AND (報價放行 = 1) AND (報價簽回 = 1) AND (作廢 = 0)"
  549. ElseIf 待送報價_ch.Checked = False And 待審報價_ch.Checked = False And 報價放行_ch.Checked = False And
  550. 作廢報價_ch.Checked = False And 報價簽回_ch.Checked = False And 合約簽回_ch.Checked = True Then
  551. SQL6 = " AND (合約停止 = 0 OR 合約停止 IS NULL) AND (報價放行 = 1) AND (合約簽回 = 1) AND (作廢 = 0)"
  552. ElseIf 待送報價_ch.Checked = False And 待審報價_ch.Checked = False And 報價放行_ch.Checked = False And
  553. 作廢報價_ch.Checked = True And 報價簽回_ch.Checked = False And 合約簽回_ch.Checked = False Then
  554. SQL6 = " AND (作廢 = 1)"
  555. End If
  556. SQL_合約清單_報價用()
  557. da.Fill(ds6) : 合約_dgv.DataSource = ds6.Tables(0) : conn.Close()
  558. 合約_dgv.Columns(0).FillWeight = 130 : 合約_dgv.Columns(表頭(8)).FillWeight = 280 : 合約_dgv.Columns("簽回").FillWeight = 40 : 合約_dgv.Columns("審核通過").FillWeight = 40
  559. 合約_dgv.Columns("停止").FillWeight = 40
  560. For i As Integer = 1 To 38 : 合約_dgv.Columns(i).Visible = False : Next
  561. For i As Integer = 0 To 合約_dgv.Rows.Count - 1
  562. If IsDBNull(合約_dgv("停止", i).Value) = True Then : 合約_dgv("停止", i).Value = False : End If
  563. If IsDBNull(合約_dgv("簽回", i).Value) = True Then : 合約_dgv("簽回", i).Value = False : End If
  564. Next
  565. If 放大 = True Then
  566. 合約_dgv.Columns(表頭(8)).Visible = True : 合約_dgv.Columns("審核通過").Visible = True : 合約_dgv.Columns("停止").Visible = True
  567. Else
  568. 合約_dgv.Columns(表頭(8)).Visible = False : 合約_dgv.Columns("審核通過").Visible = False : 合約_dgv.Columns("停止").Visible = False
  569. End If
  570. End Sub
  571. Private Sub Set_合約試算控制表_查詢()
  572. Dim ds5 As New DataSet : 試算控制表_dgv.DataSource = Nothing : ds5.Clear()
  573. 試算控制表_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  574. 試算控制表_dgv.ColumnHeadersHeight = 25 : 試算控制表_dgv.AllowUserToAddRows = False
  575. SQL_合約試算控制表_查詢()
  576. da.Fill(ds5) : 試算控制表_dgv.DataSource = ds5.Tables(0) : conn.Close()
  577. For i As Integer = 0 To 40 : 合約試算表頭(i) = i & "." : Next
  578. If 試算控制表_dgv.Rows.Count > 0 Then : For i As Integer = 0 To 試算控制表_dgv.Rows.Count - 1 : 合約試算表頭(i + 1) = 試算控制表_dgv("樓層/迴路", i).Value.ToString : Next : End If
  579. Set_試算明細表()
  580. End Sub
  581. Private Sub Set_試算明細表()
  582. Dim DS7 As New DataSet : 試算表_dgv.DataSource = Nothing : DS7.Clear()
  583. 試算表_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  584. 試算表_dgv.ColumnHeadersHeight = 120 : 試算表_dgv.AllowUserToAddRows = False : 試算表_dgv.RowTemplate.Height = 45
  585. SQL_合約試算明細表_查詢()
  586. da.Fill(DS7) : 試算表_dgv.DataSource = DS7.Tables(0) : conn.Close()
  587. 試算表_dgv.Columns(0).Frozen = True : 試算表_dgv.Columns(1).Frozen = True : 試算表_dgv.Columns(2).Frozen = True
  588. 試算表_dgv.Columns(0).Visible = False
  589. For I As Integer = 45 To 54 : 試算表_dgv.Columns(I).Visible = False : Next
  590. 試算表_dgv.Columns(1).Width = 100 : 試算表_dgv.Columns(2).Width = 150 : 試算表_dgv.Columns(43).Width = 30 : 試算表_dgv.Columns(44).Width = 50
  591. 試算表_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 試算表_dgv.Columns(44).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  592. 試算表_dgv.Columns(44).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  593. 試算表_dgv.Columns(44).DefaultCellStyle.Format = "#,##0"
  594. If 直接輸入_ch.Checked = False And 使用計算機_ch.Checked = True Then : 試算表_dgv.EditMode = DataGridViewEditMode.EditOnF2
  595. Else : 試算表_dgv.EditMode = DataGridViewEditMode.EditOnEnter : End If
  596. 試算表_dgv.Columns(1).ReadOnly = True : 試算表_dgv.Columns(2).ReadOnly = True : 試算表_dgv.Columns(44).ReadOnly = True
  597. Dim 開始 As Integer = 3 : Dim 結束 As Integer = 42
  598. For I As Integer = 開始 To 結束 : 試算表_dgv.Columns(I).Width = 80
  599. 試算表_dgv.Columns(I).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  600. 試算表_dgv.Columns(I).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  601. 試算表_dgv.Columns(I).DefaultCellStyle.Format = "#,##0.0"
  602. Next
  603. Dim 表頭數 As Integer = 試算控制表_dgv.Rows.Count
  604. If 表頭數 = 0 Then
  605. For I As Integer = 開始 To 結束 : 試算表_dgv.Columns(I).Visible = False : Next
  606. ElseIf 表頭數 > 0 Then
  607. For I As Integer = 開始 To 表頭數 + 2 : 試算表_dgv.Columns(I).Visible = True : Next
  608. For I As Integer = 表頭數 + 3 To 結束 : 試算表_dgv.Columns(I).Visible = False : Next
  609. End If
  610. For i As Integer = 0 To 試算表_dgv.Rows.Count - 1
  611. '-------------------------規格合併呈現----------------------------------------------------------------------------------------------------------------------------------------
  612. If i = 0 Then
  613. PA3 = 試算表_dgv.Rows(i).Cells("規格庫抬頭指定").Value : SQL_規格庫抬頭讀取()
  614. If dr.Read() Then
  615. AAA1 = dr("A1") : AAA2 = dr("A2") : AAA3 = dr("A3") : AAA4 = dr("A4") : AAA5 = dr("A5") : AAA6 = dr("A6") : AAA7 = dr("A7") : AAA8 = dr("A8")
  616. End If : conn.Close()
  617. Else
  618. If 試算表_dgv.Rows(i).Cells("規格庫抬頭指定").Value.ToString <> 試算表_dgv.Rows(i - 1).Cells("規格庫抬頭指定").Value.ToString Then
  619. PA3 = 試算表_dgv.Rows(i).Cells("規格庫抬頭指定").Value : SQL_規格庫抬頭讀取()
  620. If dr.Read() Then
  621. AAA1 = dr("A1") : AAA2 = dr("A2") : AAA3 = dr("A3") : AAA4 = dr("A4") : AAA5 = dr("A5") : AAA6 = dr("A6") : AAA7 = dr("A7") : AAA8 = dr("A8")
  622. End If : conn.Close()
  623. End If
  624. End If
  625. Dim ZA1, ZA2, ZA3, ZA4, ZA5, ZA6, ZA7, ZA8 As String : 物料規格 = ""
  626. If 詳細資料3_ch.Checked = True Then
  627. If 試算表_dgv.Rows(i).Cells("A1").Value.ToString <> "" Then
  628. ZA1 = AAA1 & "=" & 試算表_dgv.Rows(i).Cells("A1").Value.ToString : 物料規格 = ZA1 : End If
  629. If 試算表_dgv.Rows(i).Cells("A2").Value.ToString <> "" Then : ZA2 = AAA2 & "=" & 試算表_dgv.Rows(i).Cells("A2").Value
  630. If 物料規格 = "" Then : 物料規格 = ZA2 : Else : 物料規格 = 物料規格 + "、" + ZA2 : End If : End If
  631. If 試算表_dgv.Rows(i).Cells("A3").Value.ToString <> "" Then : ZA3 = AAA3 & "=" & 試算表_dgv.Rows(i).Cells("A3").Value
  632. If 物料規格 = "" Then : 物料規格 = ZA3 : Else : 物料規格 = 物料規格 + "、" + ZA3 : End If : End If
  633. If 試算表_dgv.Rows(i).Cells("A4").Value.ToString <> "" Then : ZA4 = AAA4 & "=" & 試算表_dgv.Rows(i).Cells("A4").Value
  634. If 物料規格 = "" Then : 物料規格 = ZA4 : Else : 物料規格 = 物料規格 + "、" + ZA4 : End If : End If
  635. If 試算表_dgv.Rows(i).Cells("A5").Value.ToString <> "" Then : ZA5 = AAA5 & "=" & 試算表_dgv.Rows(i).Cells("A5").Value
  636. If 物料規格 = "" Then : 物料規格 = ZA5 : Else : 物料規格 = 物料規格 + "、" + ZA5 : End If : End If
  637. If 試算表_dgv.Rows(i).Cells("A6").Value.ToString <> "" Then : ZA6 = AAA6 & "=" & 試算表_dgv.Rows(i).Cells("A6").Value
  638. If 物料規格 = "" Then : 物料規格 = ZA6 : Else : 物料規格 = 物料規格 + "、" + ZA6 : End If : End If
  639. If 試算表_dgv.Rows(i).Cells("A7").Value.ToString <> "" Then : ZA7 = AAA7 & "=" & 試算表_dgv.Rows(i).Cells("A7").Value
  640. If 物料規格 = "" Then : 物料規格 = ZA7 : Else : 物料規格 = 物料規格 + "、" + ZA7 : End If : End If
  641. If 試算表_dgv.Rows(i).Cells("A8").Value.ToString <> "" Then : ZA8 = AAA8 & "=" & 試算表_dgv.Rows(i).Cells("A8").Value
  642. If 物料規格 = "" Then : 物料規格 = ZA8 : Else : 物料規格 = 物料規格 + "、" + ZA8 : End If : End If
  643. Else
  644. If 試算表_dgv.Rows(i).Cells("A1").Value.ToString <> "" Then : ZA1 = 試算表_dgv.Rows(i).Cells("A1").Value.ToString : 物料規格 = ZA1 : End If
  645. If 試算表_dgv.Rows(i).Cells("A2").Value.ToString <> "" Then
  646. ZA2 = 試算表_dgv.Rows(i).Cells("A2").Value : If 物料規格 = "" Then : 物料規格 = ZA2 : Else : 物料規格 = 物料規格 + "、" + ZA2 : End If : End If
  647. If 試算表_dgv.Rows(i).Cells("A3").Value.ToString <> "" Then
  648. ZA3 = 試算表_dgv.Rows(i).Cells("A3").Value : If 物料規格 = "" Then : 物料規格 = ZA3 : Else : 物料規格 = 物料規格 + "、" + ZA3 : End If : End If
  649. If 試算表_dgv.Rows(i).Cells("A4").Value.ToString <> "" Then
  650. ZA4 = 試算表_dgv.Rows(i).Cells("A4").Value : If 物料規格 = "" Then : 物料規格 = ZA4 : Else : 物料規格 = 物料規格 + "、" + ZA4 : End If : End If
  651. If 試算表_dgv.Rows(i).Cells("A5").Value.ToString <> "" Then
  652. ZA5 = 試算表_dgv.Rows(i).Cells("A5").Value : If 物料規格 = "" Then : 物料規格 = ZA5 : Else : 物料規格 = 物料規格 + "、" + ZA5 : End If : End If
  653. If 試算表_dgv.Rows(i).Cells("A6").Value.ToString <> "" Then
  654. ZA6 = 試算表_dgv.Rows(i).Cells("A6").Value : If 物料規格 = "" Then : 物料規格 = ZA6 : Else : 物料規格 = 物料規格 + "、" + ZA6 : End If : End If
  655. If 試算表_dgv.Rows(i).Cells("A7").Value.ToString <> "" Then
  656. ZA7 = 試算表_dgv.Rows(i).Cells("A7").Value : If 物料規格 = "" Then : 物料規格 = ZA7 : Else : 物料規格 = 物料規格 + "、" + ZA7 : End If : End If
  657. If 試算表_dgv.Rows(i).Cells("A8").Value.ToString <> "" Then
  658. ZA8 = 試算表_dgv.Rows(i).Cells("A8").Value : If 物料規格 = "" Then : 物料規格 = ZA8 : Else : 物料規格 = 物料規格 + "、" + ZA8 : End If : End If
  659. End If : 試算表_dgv.Rows(i).Cells("樓層/迴路").Value = 物料規格
  660. Next
  661. End Sub
  662. Private Sub 語言轉換讀取()
  663. If 系統語言 = "繁體中文" Then : 語言 = "CH" : ElseIf 系統語言 = "English" Then : 語言 = "EN" : ElseIf 系統語言 = "Indonesian" Then : 語言 = "IN" : End If
  664. Me.Text = 系統語言字典("H001-124-" & 語言) : ToolTip1.ToolTipTitle = 系統語言字典("G000-108-" & 語言) : TabPage2.Text = 系統語言字典("H102-100-" & 語言)
  665. TabPage1.Text = 系統語言字典("H102-101-" & 語言)
  666. 表頭(2) = 系統語言字典("H204-125-" & 語言) : 表頭(3) = 系統語言字典("H115-124-" & 語言) : 表頭(4) = 系統語言字典("H527-132-" & 語言) : 表頭(14) = 系統語言字典("H108-114-" & 語言)
  667. 表頭(5) = 系統語言字典("H204-126-" & 語言) : 表頭(6) = 系統語言字典("H505-112-" & 語言) : 表頭(15) = 系統語言字典("H204-109-" & 語言) : 表頭(13) = 系統語言字典("H903-108-" & 語言)
  668. 表頭(7) = 系統語言字典("H501-152-" & 語言) : 表頭(8) = 系統語言字典("H112-118-" & 語言) : 表頭(9) = 系統語言字典("H505-112-" & 語言) : 表頭(12) = 系統語言字典("H108-148-" & 語言)
  669. 表頭(10) = 系統語言字典("H204-118-" & 語言) : 表頭(16) = 系統語言字典("H507-111-" & 語言)
  670. GroupBox2.Text = 系統語言字典("H102-156-" & 語言) : 文字資料輸入1_bt.Text = 系統語言字典("H102-156-" & 語言) : Label45.Text = 系統語言字典("H204-126-" & 語言)
  671. Label16.Text = 系統語言字典("H102-124-" & 語言) : Label31.Text = 系統語言字典("H102-157-" & 語言) : Label75.Text = 系統語言字典("H102-158-" & 語言)
  672. Label88.Text = 系統語言字典("H102-159-" & 語言) : Label89.Text = 系統語言字典("H102-160-" & 語言) : Label87.Text = 系統語言字典("H102-161-" & 語言)
  673. Label91.Text = 系統語言字典("H102-162-" & 語言) : Label86.Text = 系統語言字典("H102-163-" & 語言) : Label90.Text = 系統語言字典("H102-164-" & 語言)
  674. Label76.Text = 系統語言字典("H102-165-" & 語言) : Label92.Text = 系統語言字典("H102-166-" & 語言) : Label33.Text = 系統語言字典("H102-167-" & 語言)
  675. Label36.Text = 系統語言字典("H102-168-" & 語言) : Label19.Text = 系統語言字典("H102-169-" & 語言) : Label94.Text = 系統語言字典("H102-170-" & 語言)
  676. Label93.Text = 系統語言字典("H102-171-" & 語言) : Label32.Text = 系統語言字典("H102-172-" & 語言) : Label22.Text = 系統語言字典("H102-173-" & 語言)
  677. Label22.Text = 系統語言字典("H102-157-" & 語言) : Label13.Text = 系統語言字典("H102-174-" & 語言) : 文字資料輸入2_bt.Text = 系統語言字典("H102-156-" & 語言)
  678. 縮放_bt.Text = 系統語言字典("H102-175-" & 語言) : Label38.Text = 系統語言字典("H102-118-" & 語言) : 啟用批量選擇_ch.Text = 系統語言字典("H506-168-" & 語言)
  679. Label26.Text = 系統語言字典("H506-160-" & 語言) : Label6.Text = 系統語言字典("H112-117-" & 語言) : Label8.Text = 系統語言字典("G000-215-" & 語言)
  680. Label9.Text = 系統語言字典("G000-216-" & 語言) : Label27.Text = 系統語言字典("G000-216-" & 語言)
  681. End Sub
  682. Private Sub Set_DGV1載入前設定()
  683. 物料清單_dgv.DataSource = Nothing : ds4.Clear()
  684. 物料清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  685. 物料清單_dgv.ColumnHeadersHeight = 25 : 物料清單_dgv.AllowUserToAddRows = False
  686. If 小間距_ch.Checked = False And 中間距_ch.Checked = False And 大間距_ch.Checked = True Then : 物料清單_dgv.RowTemplate.Height = 65
  687. ElseIf 小間距_ch.Checked = False And 中間距_ch.Checked = True And 大間距_ch.Checked = False Then : 物料清單_dgv.RowTemplate.Height = 45
  688. ElseIf 小間距_ch.Checked = True And 中間距_ch.Checked = False And 大間距_ch.Checked = False Then : 物料清單_dgv.RowTemplate.Height = 25 : End If : ConnOpen()
  689. End Sub
  690. Private Sub Set_清單1()
  691. PA1 = 群組碼_tb.Text : Set_DGV1載入前設定() : SQL_合約試算分表_物料清單一() : Set_DG1載入後設定()
  692. End Sub
  693. Private Sub Set_DG1載入後設定()
  694. CmdSet_For_DGV() : da.Fill(ds4) : 物料清單_dgv.DataSource = ds4.Tables(0) : conn.Close()
  695. 物料清單_dgv.Columns(0).Visible = False : 物料清單_dgv.Columns(1).FillWeight = 80 : 物料清單_dgv.Columns(2).FillWeight = 175 : 物料清單_dgv.Columns(3).Visible = False
  696. 物料清單_dgv.Columns(4).Visible = False : 物料清單_dgv.Columns(5).FillWeight = 45
  697. 物料清單_dgv.Columns(0).ReadOnly = True : 物料清單_dgv.Columns(1).ReadOnly = True : 物料清單_dgv.Columns(2).ReadOnly = True
  698. For i As Integer = 0 To 物料清單_dgv.Rows.Count - 1 : 物料清單_dgv(0, i).Value = i + 1 : Next
  699. If 低網速模式 = False Then
  700. 物料清單_dgv.Columns(6).FillWeight = 50 : 物料清單_dgv.Columns(6).Visible = True
  701. Dim mycol As DataGridViewImageColumn = 物料清單_dgv.Columns("圖檔") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom
  702. Else : If 物料清單_dgv.Columns.Count = 7 Then : 物料清單_dgv.Columns(6).Visible = False : End If : End If
  703. End Sub
  704. Private Sub 合約試算分下拉清單()
  705. PA = 合約編號_tb.Text : SQL_合約試算分表查詢() : 試算表_cb.Items.Clear() : While (dr.Read()) : 試算表_cb.Items.Add(dr("試算表")) : End While : conn.Close()
  706. End Sub
  707. Private Sub 合約試算控制下拉清單()
  708. PA = 合約編號_tb.Text : PA2 = 表號_tb.Text : SQL_合約試算控制表查詢() : 樓層_迴路_cb.Items.Clear() : While (dr.Read()) : 樓層_迴路_cb.Items.Add(dr("樓層/迴路")) : End While : conn.Close()
  709. End Sub
  710. Private Sub 合約種類下拉清單讀取()
  711. SQL_合約種類讀取() : 合約種類_cb.Items.Clear() : 合約種類_cb.Items.Add("") : While (dr.Read()) : 合約種類_cb.Items.Add(dr("中")) : End While : conn.Close()
  712. End Sub
  713. Private Sub 客戶名稱下拉清單讀取()
  714. SQL_客戶名稱讀取() : 客戶名稱_tb.Items.Clear() : While (dr.Read()) : 客戶名稱_tb.Items.Add(dr("客戶名稱")) : End While : conn.Close()
  715. End Sub
  716. Private Sub 我司負責人下拉清單讀取()
  717. SQL負責人B讀取() : 負責人_B_cb.Items.Clear() : While (dr.Read()) : 負責人_B_cb.Items.Add(dr("負責人B")) : End While : conn.Close()
  718. End Sub
  719. Private Sub 項目其他下拉清單讀取()
  720. SQL合約其他下拉() : 其他_中_cb.Items.Clear() : 其他_印_cb.Items.Clear()
  721. While (dr.Read()) : 其他_中_cb.Items.Add(dr("其他_中")) : 其他_印_cb.Items.Add(dr("其他_印")) : End While : conn.Close()
  722. SQL合約描述下拉() : 描述_中_cb.Items.Clear() : 描述_印_cb.Items.Clear()
  723. While (dr.Read()) : 描述_中_cb.Items.Add(dr("描述_中")) : 描述_印_cb.Items.Add(dr("描述_印")) : End While : conn.Close()
  724. End Sub
  725. Private Sub 甲方條件下拉清單讀取()
  726. SQL合約條件讀取() : 合約編號1_cb.Items.Clear() : 合約編號1_cb.Items.Add("") : 合約編號2_cb.Items.Clear() : 合約編號2_cb.Items.Add("")
  727. 甲方_cb.Items.Clear() : 甲方_cb.Items.Add("")
  728. While (dr.Read()) : 合約編號1_cb.Items.Add(dr("約號甲方")) : 合約編號2_cb.Items.Add(dr("約號甲方")) : 甲方_cb.Items.Add(dr("約號甲方")) : End While : conn.Close()
  729. End Sub
  730. Private Sub 預設資料1()
  731. 工程地點_tb.Text = "" : 工程名稱_中_tb.Text = "" : 工程名稱_英_tb.Text = "" : 負責人_B_cb.Text = "" : CH2.Checked = True : 立約日期_dtp.Value = Today()
  732. 我司地址_tb.Text = "Kawasan Industri Terpadu Indonesia China ( KITIC ) Kav. 42 Lantai 4 Desa Nagasari Kec. Serang Baru Kab. Bekasi – Jawa Barat" : 廠區_中文_tb.Text = ""
  733. NUD3.Value = 0 : 工程款1_nud.Value = 30 : 工程款2_nud.Value = 40 : 工程款3_nud.Value = 20 : 工程款4_nud.Value = 5 : 工程款5_nud.Value = 5 : 工期_nud.Value = 180
  734. 最末頁_cb.Text = "16" : 最高扣款_英_bt.Text = "5 (five)%." : 逾期_bt.Text = "0.0005% (萬分之五)" : 頁數_bt.Text = "16"
  735. 最高扣款_bt.Text = "5% (百分之五)" : 逾期_英_bt.Text = "0.0005% (null point null null null five percent)"
  736. Set_合約清單() : 合約種類下拉清單讀取() : 客戶名稱下拉清單讀取() : 我司負責人下拉清單讀取()
  737. 合約種類_cb.SelectedIndex = 0
  738. End Sub
  739. Private Sub 匯率()
  740. PA48 = Strings.Left(Strings.Format(立約日期_dtp.Value, "yyyyMMdd"), 4) : PA49 = Strings.Mid(Strings.Format(立約日期_dtp.Value, "yyyyMMdd"), 5, 2)
  741. SQL_匯率查詢()
  742. If dr.Read() Then
  743. 人民幣匯率 = dr("中心匯率").ToString : 美金匯率 = dr("美金匯率").ToString : 印尼匯率 = dr("印尼盾").ToString : conn.Close() : dr.Close()
  744. If 台幣_ch.Checked = True Then : 匯率1 = 1 / 印尼匯率 : ElseIf 人民幣_ch.Checked = True Then : 匯率1 = 人民幣匯率 / 印尼匯率
  745. ElseIf 美金_ch.Checked = True Then : 匯率1 = 美金匯率 / 印尼匯率 : ElseIf 印尼盾_ch.Checked = True Then : 匯率1 = 1 : End If
  746. Else
  747. conn.Close() : dr.Close() : MGB(系統語言字典("H102-102-" & 語言), 1)
  748. If 台幣_ch.Checked = True Then : 匯率1 = 1 / 0.002 : ElseIf 人民幣_ch.Checked = True Then : 匯率1 = 4.5 / 0.002
  749. ElseIf 美金_ch.Checked = True Then : 匯率1 = 31 / 0.002 : ElseIf 印尼盾_ch.Checked = True Then : 匯率1 = 1 : End If
  750. End If
  751. End Sub
  752. Private Sub 載入群組碼()
  753. SQL_工程項目BOM_群組碼() : 群組碼_cb.Items.Clear() : 群組碼中_cb.Items.Clear() : 群組碼印_cb.Items.Clear() : 群組碼_cb.Items.Add("%%") : 群組碼中_cb.Items.Add("全部") : 群組碼印_cb.Items.Add("ALL")
  754. While (dr.Read()) : 群組碼_cb.Items.Add(dr("群組碼")) : 群組碼中_cb.Items.Add(dr("中文名稱")) : 群組碼印_cb.Items.Add(dr("印尼文名稱")) : End While
  755. End Sub
  756. Private Sub 合約報價單_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  757. HX_PGS_ERP_SYS.WindowState = 2 : Me.MdiParent = HX_PGS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  758. 風格() : H(102) = True : 介面 = "H102" : 語言轉換讀取() : 顯示說明(999, False)
  759. Me.KeyPreview = True ' 啟用 KeyPreview 屬性,使窗體可以捕捉鍵盤事件
  760. 報價總表_存_dgv.SendToBack() : 報價明細表_存_dgv.SendToBack() : 主名_中_cb.Items.Clear() : 主名_印_cb.Items.Clear() : 主項_中_cb.Items.Clear() : 主項_印_cb.Items.Clear()
  761. 合約編號2_tb.Enabled = False : 合約編號3_tb.Enabled = False : CH1.Checked = False : CH2.Checked = True : NUD1.Enabled = False : NUD3.Enabled = True
  762. 小間距_ch.Checked = True : 視窗2_pl.Visible = False : 視窗3_pl.Visible = False : 視窗4_pl.Visible = False : 直接輸入_ch.Checked = True
  763. 物料_p.Visible = False : BOM_p.Visible = True : 合約_p.Visible = False : 切換_ts.Value = True : 新式_P.Visible = True : 新式_P.BringToFront() : 主頁_p.BringToFront()
  764. 使用計算機_ch.Checked = False : SQL6 = "" : 總表空間_P.BringToFront() : 報價係數1_dgv.SendToBack()
  765. If 系統語言 = "繁體中文" Then
  766. Label11.Visible = True : Label10.Visible = False : 群組碼_cb.Visible = False : 群組碼中_cb.Visible = True : 群組碼印_cb.Visible = False
  767. Else
  768. Label11.Visible = False : Label10.Visible = True : 群組碼_cb.Visible = False : 群組碼中_cb.Visible = False : 群組碼印_cb.Visible = True
  769. End If
  770. If CInt(登入人級別) <= 5 Then : 合約停止_ch.Enabled = True : 刪除合約_bt.Enabled = True : Else : 合約停止_ch.Enabled = False : 刪除合約_bt.Enabled = False : End If
  771. 縮放1_bt.PerformClick() : 物料清單_dgv.BringToFront() : Panel1.SendToBack() : Panel7.SendToBack() : 不再動作1 = True
  772. A3 = 空間2.Size.Width : B3 = 空間2.Size.Height
  773. 空間1.Visible = False : 空間2.Location = New System.Drawing.Point(A1, B2) : 空間2.Size = New System.Drawing.Point((A2 - A1) + A3, B3)
  774. A1 = 空間1.Location.X : A2 = 錨點1.Location.X : B2 = 空間2.Location.Y : A3 = 空間2.Size.Width : B3 = 空間2.Size.Height
  775. AA1 = 合約_dgv.Location.X : AA2 = 錨點2.Location.X
  776. BB2 = 空間3.Location.Y : AA3 = 空間3.Size.Width : BB3 = 空間3.Size.Height
  777. BB4 = 總表空間_P.Location.Y : AA5 = 總表空間_P.Size.Width : BB5 = 總表空間_P.Size.Height
  778. OX1 = 報價係數_dgv.Size.Width : OY1 = 報價係數_dgv.Size.Height : OY2 = 報價明細表_dgv.Size.Height
  779. 預估工資總成本_tb.Text = "0" : 預估材料總成本_tb.Text = "0" : 預估工資總報價_tb.Text = "0" : 預估材料總報價_tb.Text = "0" : 預估利潤_tb.Text = "0"
  780. 總成本_tb.Text = "0" : 總報價_tb.Text = "0" : 利潤比1_tb.Text = "0 %" : 利潤比2_tb.Text = "0 %" : 利潤比3_tb.Text = "0 %" : 利潤比4_tb.Text = "0 %"
  781. 未折價前_tb.Text = "0" : 報價小計_tb.Text = "0" : 折讓比例_nud.Value = "0" : 歸零位數_nud.Value = "0" : 稅前歸零_ch.Checked = False : 稅後歸零_ch.Checked = False
  782. 歸零數_tb.Visible = False
  783. If 美金_ch.Checked = True Then : 幣別 = " (USD)" : ElseIf 台幣_ch.Checked = True Then : 幣別 = " (TWD)"
  784. ElseIf 人民幣_ch.Checked = True Then : 幣別 = " (RMB)" : ElseIf 印尼盾_ch.Checked = True Then : 幣別 = " (RP)" : End If
  785. If CInt(登入人級別) = 0 Then : Else : 美金_ch.Visible = False : 台幣_ch.Visible = False : 人民幣_ch.Visible = False : 印尼盾_ch.Visible = False : End If
  786. 合約報價單_Siz()
  787. End Sub
  788. Private Sub 合約報價單_SizeChanged(sender As Object, e As EventArgs) Handles MyBase.SizeChanged
  789. 合約報價單_Siz()
  790. A1 = 空間1.Location.X : A2 = 錨點1.Location.X : B2 = 空間2.Location.Y
  791. AA1 = 合約_dgv.Location.X : AA2 = 錨點2.Location.X : BB2 = 空間3.Location.Y : BB4 = 總表空間_P.Location.Y
  792. If 空間1.Visible = False Then : A3 = 空間2.Size.Width : B3 = 空間2.Size.Height : A3 -= (A2 - A1) : End If
  793. If 合約_dgv.Visible = False Then
  794. AA3 = 空間3.Size.Width : BB3 = 空間3.Size.Height : AA3 -= (AA2 - AA1)
  795. AA5 = 總表空間_P.Size.Width : BB5 = 總表空間_P.Size.Height : AA5 -= (AA2 - AA1)
  796. End If
  797. End Sub
  798. Private Sub 合約報價單_Siz()
  799. MyMod.清單字體大小調整()
  800. 合約_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6) : 合約1_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
  801. 報價係數_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6) : 報價總表_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
  802. 報價明細表_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6) : BOM表控制_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
  803. BOM表明細_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6) : 報價明細表1_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
  804. 報價明細表3_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6) : 物料清單1_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
  805. 報價明細表2_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
  806. End Sub
  807. Private Sub 合約報價單_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown
  808. Set_合約報價係數_範本() : SQL_合約作廢查詢預設() : Set_合約清單1() : Set_合約清單()
  809. SQL_群組碼_語轉_下拉清單() : 新群組1_cb.Items.Clear() : While (dr.Read()) : 新群組1_cb.Items.Add(dr("群組")) : End While : conn.Close()
  810. SQL_群組碼_下拉清單() : 群組編碼_cb.Items.Clear() : While (dr.Read()) : 群組編碼_cb.Items.Add(dr("群組碼")) : End While : conn.Close()
  811. SQL_合約係數表下拉1() : 係數項目_cb.Items.Clear() : While (dr.Read()) : 係數項目_cb.Items.Add(dr("項目")) : End While : conn.Close()
  812. SQL_合約係數表下拉2() : 係數單位_cb.Items.Clear() : While (dr.Read()) : 係數單位_cb.Items.Add(dr("單位")) : End While : conn.Close()
  813. SQL單位讀取() : 單位_cb.Items.Clear() : While (dr.Read()) : 單位_cb.Items.Add(dr("單位")) : End While : conn.Close()
  814. 甲方條件下拉清單讀取() : 新群組1_cb.SelectedIndex = 0 : PA = "範本"
  815. 載入群組碼() : 群組碼_cb.SelectedIndex = 0 : 群組碼中_cb.SelectedIndex = 0 : 群組碼印_cb.SelectedIndex = 0 : Set_BOM表控制()
  816. If 系統語言 = "繁體中文" Then
  817. 地點_中_tb.Enabled = True : 地點_印_tb.Enabled = False : 主項_中_cb.Enabled = True : 主項_印_cb.Enabled = False
  818. 主名_中_cb.Enabled = True : 主名_印_cb.Enabled = False : 項名_中_cb.Enabled = True : 項名_印_cb.Enabled = False
  819. 描述_中_cb.Enabled = True : 描述_印_cb.Enabled = False : 其他_中_cb.Enabled = True : 其他_印_cb.Enabled = False
  820. Else
  821. 地點_中_tb.Enabled = False : 地點_印_tb.Enabled = True : 主項_中_cb.Enabled = False : 主項_印_cb.Enabled = True
  822. 主名_中_cb.Enabled = False : 主名_印_cb.Enabled = True : 項名_中_cb.Enabled = False : 項名_印_cb.Enabled = True
  823. 描述_中_cb.Enabled = False : 描述_印_cb.Enabled = True : 其他_中_cb.Enabled = False : 其他_印_cb.Enabled = True
  824. End If
  825. 合約種類_cb.Text = "" : 合約種類_tb.Text = "" : 客戶名稱_tb.Text = "" : 負責人_A_cb.Text = ""
  826. 工程地點_tb.Text = "" : 客戶地址_tb.Text = "" : 工程名稱_中_tb.Text = "" : 工程名稱_英_tb.Text = "" : 負責人_B_cb.Text = "" : CH2.Checked = True : 立約日期_dtp.Value = Today()
  827. 我司地址_tb.Text = "Kawasan Industri Terpadu Indonesia China ( KITIC ) Kav. 42 Lantai 4 Desa Nagasari Kec. Serang Baru Kab. Bekasi – Jawa Barat" : 廠區_中文_tb.Text = ""
  828. NUD3.Value = 0 : 工程款1_nud.Value = 30 : 工程款2_nud.Value = 40 : 工程款3_nud.Value = 20 : 工程款4_nud.Value = 5 : 工程款5_nud.Value = 5 : 工期_nud.Value = 180
  829. 最高扣款_英_bt.Text = "5 (five)%." : 逾期_bt.Text = "0.0005% (萬分之五)" : 頁數_bt.Text = "16"
  830. 最高扣款_bt.Text = "5% (百分之五)" : 逾期_英_bt.Text = "0.0005% (null point null null null five percent)"
  831. Set_合約清單() : 合約種類下拉清單讀取() : 客戶名稱下拉清單讀取() : 我司負責人下拉清單讀取()
  832. 合約種類_cb.SelectedIndex = 0
  833. Set_合約文件圖庫資料庫狀態()
  834. 項目其他下拉清單讀取()
  835. '----------------由待辦事項進入----------------------------------------------------------------------------------------------------------------------------------
  836. If 待辦進入 <> "" Then : 關鍵字搜尋_tb.Text = 待辦進入
  837. 待送報價_ch.Checked = True : 待審報價_ch.Checked = False : 報價放行_ch.Checked = False : 作廢報價_ch.Checked = False : 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = False
  838. Set_合約清單() : If 合約_dgv.Rows.Count > 0 Then : 選取位置 = 0 : 合約讀取() : 待辦進入 = "" : 關鍵字搜尋_tb.Text = "" : Set_合約清單() : Exit Sub : End If
  839. 待送報價_ch.Checked = False : 待審報價_ch.Checked = True : 報價放行_ch.Checked = False : 作廢報價_ch.Checked = False : 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = False
  840. Set_合約清單() : If 合約_dgv.Rows.Count > 0 Then : 選取位置 = 0 : 合約讀取() : 待辦進入 = "" : 關鍵字搜尋_tb.Text = "" : Set_合約清單() : Exit Sub : End If
  841. 待送報價_ch.Checked = False : 待審報價_ch.Checked = False : 報價放行_ch.Checked = True : 作廢報價_ch.Checked = False : 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = False
  842. Set_合約清單() : If 合約_dgv.Rows.Count > 0 Then : 選取位置 = 0 : 合約讀取() : 待辦進入 = "" : 關鍵字搜尋_tb.Text = "" : Set_合約清單() : Exit Sub : End If
  843. 待送報價_ch.Checked = False : 待審報價_ch.Checked = False : 報價放行_ch.Checked = False : 作廢報價_ch.Checked = True : 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = False
  844. Set_合約清單() : If 合約_dgv.Rows.Count > 0 Then : 選取位置 = 0 : 合約讀取() : 待辦進入 = "" : 關鍵字搜尋_tb.Text = "" : Set_合約清單() : Exit Sub : End If
  845. 待送報價_ch.Checked = False : 待審報價_ch.Checked = False : 報價放行_ch.Checked = False : 作廢報價_ch.Checked = False : 報價簽回_ch.Checked = True : 合約簽回_ch.Checked = False
  846. Set_合約清單() : If 合約_dgv.Rows.Count > 0 Then : 選取位置 = 0 : 合約讀取() : 待辦進入 = "" : 關鍵字搜尋_tb.Text = "" : Set_合約清單() : Exit Sub : End If
  847. 待送報價_ch.Checked = False : 待審報價_ch.Checked = False : 報價放行_ch.Checked = False : 作廢報價_ch.Checked = False : 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = True
  848. Set_合約清單() : If 合約_dgv.Rows.Count > 0 Then : 選取位置 = 0 : 合約讀取() : 待辦進入 = "" : 關鍵字搜尋_tb.Text = "" : Set_合約清單() : Exit Sub : End If
  849. MGB(系統語言字典("H204-138-" & 語言), 1)
  850. End If
  851. End Sub
  852. Private Sub 合約報價單_Closing(sender As Object, e As EventArgs) Handles MyBase.Closed
  853. SQL_合約作廢查詢預設() : MyMod.虛擬桌面開啟()
  854. End Sub
  855. Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove
  856. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  857. End Sub
  858. Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress
  859. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  860. End Sub
  861. Private Sub 語轉扭_bt_Click(sender As Object, e As EventArgs) Handles 語轉扭_bt.Click
  862. 介面 = "H102" : 語言轉換讀取() : 回首頁_bt.PerformClick()
  863. End Sub
  864. Private Sub 合約報價單_KeyDown(sender As Object, e As KeyEventArgs) Handles MyBase.KeyDown
  865. If e.Control AndAlso e.KeyCode = Keys.S Then : 報價總表存檔_bt.PerformClick() : 報價明細表存檔_bt.PerformClick() : End If
  866. End Sub
  867. Private Sub 合約編號1_cb_Click(sender As Object, e As EventArgs) Handles 合約編號1_cb.Click
  868. CB選擇清單(合約編號1_cb, 合約編號1_cb.Text)
  869. End Sub
  870. Private Sub 合約編號_cb_Click(sender As Object, e As EventArgs) Handles 合約編號_cb.Click
  871. CB選擇清單(合約編號_cb, 合約編號_cb.Text)
  872. End Sub
  873. Private Sub 最末頁_cb_Click(sender As Object, e As EventArgs) Handles 最末頁_cb.Click
  874. CB選擇清單(最末頁_cb, 最末頁_cb.Text)
  875. End Sub
  876. Private Sub 合約種類_cb_Click(sender As Object, e As EventArgs) Handles 合約種類_cb.Click
  877. CB選擇清單(合約種類_cb, 合約種類_cb.Text)
  878. End Sub
  879. Private Sub 負責人_A_cb_Click(sender As Object, e As EventArgs) Handles 負責人_A_cb.Click
  880. CB選擇清單(負責人_A_cb, 負責人_A_cb.Text)
  881. End Sub
  882. Private Sub 客戶名稱_tb_Click(sender As Object, e As EventArgs) Handles 客戶名稱_tb.Click
  883. CB選擇清單(客戶名稱_tb, 客戶名稱_tb.Text)
  884. End Sub
  885. Private Sub 選擇公司_cb_Click(sender As Object, e As EventArgs) Handles 選擇公司_cb.Click
  886. CB選擇清單(選擇公司_cb, 選擇公司_cb.Text)
  887. End Sub
  888. Private Sub 負責人_B_cb_Click(sender As Object, e As EventArgs) Handles 負責人_B_cb.Click
  889. CB選擇清單(負責人_B_cb, 負責人_B_cb.Text)
  890. End Sub
  891. Private Sub 報價明細表2_dgv_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles 報價明細表2_dgv.CellClick
  892. If e.RowIndex = -1 Then : Else
  893. If 報價明細表2_dgv.Rows(e.RowIndex).Cells(表頭(10)).Value = True Then
  894. 報價明細表2_dgv.Rows(e.RowIndex).Cells(表頭(10)).Value = False
  895. Else
  896. 報價明細表2_dgv.Rows(e.RowIndex).Cells(表頭(10)).Value = True
  897. End If
  898. 物料圖1_pb.Image = Nothing
  899. If 報價明細表2_dgv.Rows(e.RowIndex).Cells("料號原則").Value.ToString = "" Then : Else
  900. PA2 = 報價明細表2_dgv.Rows(e.RowIndex).Cells("料號原則").Value.ToString : SQL_物料圖庫_圖檔讀取一()
  901. While dr.Read() = True
  902. Dim unused As Byte() = New Byte(-1) {}
  903. Dim bytes As Byte() = DirectCast(dr.Item("圖檔"), Byte())
  904. Dim oStream As New MemoryStream(bytes)
  905. 物料圖1_pb.Image = Bitmap.FromStream(oStream)
  906. End While : conn.Close() : 物料圖1_pb.SizeMode = 4
  907. End If
  908. '------------數字為0隱藏-----------------------------------------------------------------------------------------------
  909. For i As Integer = 0 To 報價明細表2_dgv.Rows.Count - 1
  910. If 深色風格 = False Then
  911. If IsDBNull(報價明細表2_dgv.Rows(i).Cells("QTY").Value) Then : 報價明細表2_dgv.Rows(i).Cells("QTY").Style.ForeColor = Color.White : Else
  912. If 報價明細表2_dgv.Rows(i).Cells("QTY").Value = 0 Then : 報價明細表2_dgv.Rows(i).Cells("QTY").Style.ForeColor = Color.White
  913. Else : 報價明細表2_dgv.Rows(i).Cells("QTY").Style.ForeColor = Color.Black : End If : End If
  914. Else
  915. If IsDBNull(報價明細表2_dgv.Rows(i).Cells("QTY").Value) Then : 報價明細表2_dgv.Rows(i).Cells("QTY").Style.ForeColor = Color.Black : Else
  916. If 報價明細表2_dgv.Rows(i).Cells("QTY").Value = 0 Then : 報價明細表2_dgv.Rows(i).Cells("QTY").Style.ForeColor = Color.Black
  917. Else : 報價明細表2_dgv.Rows(i).Cells("QTY").Style.ForeColor = Color.White : End If : End If
  918. End If
  919. Next
  920. If 深色風格 = False Then
  921. If 報價明細表2_dgv.Rows(e.RowIndex).Cells(表頭(10)).Value = True Then
  922. 報價明細表2_dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.LightGreen
  923. Else : 報價明細表2_dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.White : End If
  924. Else
  925. If 報價明細表2_dgv.Rows(e.RowIndex).Cells(表頭(10)).Value = True Then
  926. 報價明細表2_dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.Green
  927. Else : 報價明細表2_dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.Black : End If
  928. End If
  929. End If
  930. End Sub
  931. Private Sub 合約1_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 合約1_dgv.CellClick
  932. If e.RowIndex = -1 Then : Else
  933. 合約編號_1_tb.Text = 合約1_dgv.Rows(e.RowIndex).Cells(表頭(7)).Value : Set_合約報價明細表1()
  934. If 放大 = True Then : 縮放2_bt.PerformClick() : End If
  935. End If
  936. End Sub
  937. Private Sub BOM表控制_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles BOM表控制_dgv.CellClick
  938. If e.RowIndex = -1 Then : Else
  939. 主項目_tb.Text = BOM表控制_dgv.Rows(e.RowIndex).Cells("項目").Value.ToString : 項目流水_tb.Text = BOM表控制_dgv.Rows(e.RowIndex).Cells("流水號").Value.ToString
  940. PA = 項目流水_tb.Text : Set_BOM表明細()
  941. End If
  942. End Sub
  943. Private Sub BOM表明細_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles BOM表明細_dgv.CellClick
  944. If e.RowIndex = -1 Then : Else
  945. If BOM表明細_dgv.Rows(e.RowIndex).Cells(35).Value = False Then
  946. BOM表明細_dgv.Rows(e.RowIndex).Cells(35).Value = True
  947. If 深色風格 = False Then : BOM表明細_dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.LightGreen
  948. Else : BOM表明細_dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.DarkGreen : End If
  949. Else
  950. BOM表明細_dgv.Rows(e.RowIndex).Cells(35).Value = False
  951. If 深色風格 = False Then : BOM表明細_dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.White
  952. Else : BOM表明細_dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.Black : End If
  953. End If
  954. 物料圖1_pb.Image = Nothing
  955. If BOM表明細_dgv.Rows(e.RowIndex).Cells("料號原則").Value.ToString = "" Then : Else
  956. PA2 = BOM表明細_dgv.Rows(e.RowIndex).Cells("料號原則").Value.ToString : SQL_物料圖庫_圖檔讀取一()
  957. While dr.Read() = True
  958. Dim unused As Byte() = New Byte(-1) {}
  959. Dim bytes As Byte() = DirectCast(dr.Item("圖檔"), Byte())
  960. Dim oStream As New MemoryStream(bytes)
  961. 物料圖1_pb.Image = Bitmap.FromStream(oStream)
  962. End While : conn.Close() : 物料圖1_pb.SizeMode = 4
  963. End If
  964. End If
  965. End Sub
  966. Private Sub 合約讀取()
  967. 試算表_cb.Items.Clear() : 試算表_cb.Text = "試算表1" : 表號_tb.Text = "B01"
  968. '---------合約生成--------------------------------------------------------------------------------------------------------------
  969. 合約種類下拉清單讀取() : 客戶名稱下拉清單讀取() : 我司負責人下拉清單讀取()
  970. If Strings.Left(合約_dgv(表頭(7), 選取位置).Value.ToString, 2) = "HX" Then : 合約編號_cb.Text = "HX" : Else : 合約編號_cb.Text = "PGS" : End If
  971. 合約編號1_tb.Text = 合約_dgv("約號甲方", 選取位置).Value.ToString : 合約編號2_tb.Text = 合約_dgv("約號排序", 選取位置).Value.ToString
  972. 合約編號3_tb.Text = 合約_dgv("約號尾序", 選取位置).Value.ToString : 報價說明_tb.Text = 合約_dgv("報價說明", 選取位置).Value.ToString
  973. 客戶名稱_tb.Text = 合約_dgv("客戶名稱", 選取位置).Value.ToString : 負責人_A_cb.Text = 合約_dgv("負責人A", 選取位置).Value.ToString
  974. 工程地點_tb.Text = 合約_dgv("工程地點", 選取位置).Value.ToString : 客戶地址_tb.Text = 合約_dgv("客戶地址", 選取位置).Value.ToString
  975. 工程名稱_中_tb.Text = 合約_dgv(表頭(8), 選取位置).Value.ToString : 工程名稱_英_tb.Text = 合約_dgv("工程名稱_英", 選取位置).Value.ToString
  976. 負責人_B_cb.Text = 合約_dgv("負責人B", 選取位置).Value.ToString : 我司地址_tb.Text = 合約_dgv("我司地址", 選取位置).Value.ToString
  977. CH2.Checked = True : NUD3.Value = 合約_dgv("工程總價", 選取位置).Value : 工程款1_nud.Value = 合約_dgv("第一期比例", 選取位置).Value
  978. 工程款2_nud.Value = 合約_dgv("第二期比例", 選取位置).Value : 工程款3_nud.Value = 合約_dgv("第三期比例", 選取位置).Value
  979. 工程款4_nud.Value = 合約_dgv("第四期比例", 選取位置).Value : 工程款5_nud.Value = 合約_dgv("第五期比例", 選取位置).Value
  980. 工期_nud.Value = 合約_dgv("工期", 選取位置).Value : 逾期_bt.Text = 合約_dgv("逾期_中", 選取位置).Value.ToString
  981. 最高扣款_bt.Text = 合約_dgv("最高扣罰_中", 選取位置).Value.ToString : 逾期_英_bt.Text = 合約_dgv("逾期_英", 選取位置).Value.ToString
  982. 最高扣款_英_bt.Text = 合約_dgv("最高扣罰_英", 選取位置).Value.ToString : 減價_bt.Text = 合約_dgv("減價", 選取位置).Value.ToString
  983. 廠區_中文_tb.Text = 合約_dgv("工程廠區", 選取位置).Value.ToString : 最末頁_cb.Text = 合約_dgv("頁數", 選取位置).Value.ToString
  984. 立約日期_dtp.Value = 合約_dgv("立約日期", 選取位置).Value : 合約種類_cb.Text = 合約_dgv("合約種類", 選取位置).Value.ToString
  985. 合約停止_ch.Checked = 合約_dgv("停止", 選取位置).Value
  986. If 合約_dgv("幣別", 選取位置).Value.ToString = "美金" Then : 美金_ch.Checked = True : 台幣_ch.Checked = False : 人民幣_ch.Checked = False : 印尼盾_ch.Checked = False
  987. ElseIf 合約_dgv("幣別", 選取位置).Value.ToString = "台幣" Then : 美金_ch.Checked = False : 台幣_ch.Checked = True : 人民幣_ch.Checked = False : 印尼盾_ch.Checked = False
  988. ElseIf 合約_dgv("幣別", 選取位置).Value.ToString = "人民幣" Then : 美金_ch.Checked = False : 台幣_ch.Checked = False : 人民幣_ch.Checked = True : 印尼盾_ch.Checked = False
  989. ElseIf 合約_dgv("幣別", 選取位置).Value.ToString = "印尼盾" Then : 美金_ch.Checked = False : 台幣_ch.Checked = False : 人民幣_ch.Checked = False : 印尼盾_ch.Checked = True
  990. End If
  991. 折讓比例_nud.Value = 合約_dgv("折讓比例", 選取位置).Value : 歸零位數_nud.Value = 合約_dgv("歸零位數", 選取位置).Value
  992. 稅前歸零_ch.Checked = 合約_dgv("稅前歸零", 選取位置).Value : 稅後歸零_ch.Checked = 合約_dgv("稅後歸零", 選取位置).Value
  993. 圖片庫 = 合約_dgv("簽回檔圖庫", 選取位置).Value.ToString : 簽回檔 = 合約_dgv("簽回", 選取位置).Value
  994. PA = 合約編號_cb.Text & "-" & 合約編號1_tb.Text & " " & 合約編號2_tb.Text & "-" & 合約編號3_tb.Text
  995. '---------試算表--------------------------------------------------------------------------------------------------------------
  996. 合約編號_tb.Text = 合約_dgv(表頭(7), 選取位置).Value.ToString
  997. PA = 合約_dgv(表頭(7), 選取位置).Value.ToString : SQL_合約試算分表查詢()
  998. If dr.Read() Then
  999. 試算表_cb.Items.Clear() : conn.Close() : SQL_合約試算分表查詢() : While (dr.Read()) : 試算表_cb.Items.Add(dr("試算表")) : End While
  1000. conn.Close() : 試算表_cb.SelectedIndex = 0 : 表號_tb.Text = "B01" : PA2 = 表號_tb.Text : SQL_合約試算控制表查詢()
  1001. If dr.Read() Then
  1002. 樓層_迴路_cb.Items.Clear() : conn.Close() : SQL_合約試算控制表查詢() : While (dr.Read()) : 樓層_迴路_cb.Items.Add(dr("樓層/迴路")) : End While : conn.Close()
  1003. 樓層_迴路_cb.SelectedIndex = 0 : 表頭_tb.Text = "A01" : Set_合約試算控制表_查詢()
  1004. Else
  1005. 樓層_迴路_cb.Items.Clear() : 表頭_tb.Text = "" : Set_合約試算控制表_查詢()
  1006. End If : conn.Close()
  1007. Else
  1008. conn.Close() : PA1 = 試算表_cb.Text : PA2 = 表號_tb.Text : SQL_合約試算分表_新增()
  1009. End If : conn.Close()
  1010. '---------報價單--------------------------------------------------------------------------------------------------------------
  1011. 報價單合約編號_tb.Text = 合約_dgv(表頭(7), 選取位置).Value.ToString : 報價單客戶名稱_cb.Text = 合約_dgv("客戶名稱", 選取位置).Value.ToString
  1012. 報價工程名稱_中_tb.Text = 合約_dgv(表頭(8), 選取位置).Value.ToString : 報價工程名稱_英_tb.Text = 合約_dgv("工程名稱_英", 選取位置).Value.ToString
  1013. 報價單立約日期_dtp.Value = 合約_dgv("立約日期", 選取位置).Value.ToString
  1014. PA = 合約編號_tb.Text
  1015. Set_合約報價總表() : Set_合約報價係數() : Set_合約報價明細表() : 報價總表_dgv_自動計算()
  1016. If 報價明細表_dgv.Rows.Count = 0 Then : For i As Integer = 1 To 3 : 新增資料2_bt.PerformClick() : Next : End If
  1017. End Sub
  1018. Private Sub 合約_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 合約_dgv.CellClick
  1019. If e.RowIndex = -1 Then : Else : 選取位置 = e.RowIndex : 合約讀取() : End If : 縮放2_bt.PerformClick() : 縮放1_bt.PerformClick()
  1020. End Sub
  1021. Private Sub 試算表_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 試算表_dgv.CellClick
  1022. If e.RowIndex = -1 Then : Else
  1023. 料號1_tb.Text = 試算表_dgv.Rows(e.RowIndex).Cells("料號").Value.ToString
  1024. PA2 = Strings.StrReverse(Strings.Mid(Strings.StrReverse(試算表_dgv.Rows(e.RowIndex).Cells("料號").Value.ToString), 6, 50)) : SQL_物料圖庫_圖檔讀取一()
  1025. While dr.Read() = True
  1026. Dim unused As Byte() = New Byte(-1) {}
  1027. Dim bytes As Byte() = DirectCast(dr.Item("圖檔"), Byte())
  1028. Dim oStream As New MemoryStream(bytes)
  1029. 物料圖_pb.Image = Bitmap.FromStream(oStream)
  1030. End While : conn.Close() : 物料圖_pb.SizeMode = 4
  1031. End If
  1032. End Sub
  1033. Private Sub 物料清單_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 物料清單_dgv.CellClick
  1034. If e.RowIndex = -1 Then : Else
  1035. PA = 物料清單_dgv(1, e.RowIndex).Value.ToString
  1036. PA1 = 物料清單_dgv.Rows(e.RowIndex).Cells("群組碼").Value : PA2 = 物料清單_dgv.Rows(e.RowIndex).Cells("料號原則").Value
  1037. SQL_物料圖庫_圖檔讀取()
  1038. While dr.Read() = True
  1039. Dim unused As Byte() = New Byte(-1) {}
  1040. Dim bytes As Byte() = DirectCast(dr.Item("圖檔"), Byte())
  1041. Dim oStream As New MemoryStream(bytes)
  1042. 物料圖_pb.Image = Bitmap.FromStream(oStream)
  1043. 物料圖1_pb.Image = Bitmap.FromStream(oStream)
  1044. End While : conn.Close() : 物料圖_pb.SizeMode = 4 : 物料圖1_pb.SizeMode = 4
  1045. '------------------------------------------------------------------------------------------------------------------------------------------
  1046. SQL_建築物料請購單申請_物料規格讀取()
  1047. If dr.Read() Then : KKK2 = dr("規格庫編號") : PA3 = dr("規格庫抬頭指定") : PA4 = dr("群組碼") : End If : conn.Close()
  1048. '------------------------------------------------------------------------------------------------------------------------------------------
  1049. SQL_規格庫抬頭讀取()
  1050. If dr.Read() Then : AAA1 = dr("A1") : AAA2 = dr("A2") : AAA3 = dr("A3") : AAA4 = dr("A4") : AAA5 = dr("A5") : AAA6 = dr("A6") : AAA7 = dr("A7") : AAA8 = dr("A8") : End If
  1051. conn.Close()
  1052. '------------------------------------------------------------------------------------------------------------------------------------------
  1053. Dim ds3 As New DataSet
  1054. 物料規格_dgv.DataSource = Nothing : ds3.Clear()
  1055. 物料規格_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  1056. 物料規格_dgv.ColumnHeadersHeight = 25 : 物料規格_dgv.AllowUserToAddRows = False : 物料規格_dgv.RowTemplate.Height = 20
  1057. If KKK2 = "SQLB03" Then : SQL_物料規格_SQLB03() : ElseIf KKK2 = "SQLB04" Then : SQL_物料規格_SQLB04() : ElseIf KKK2 = "SQLB05" Then : SQL_物料規格_SQLB05()
  1058. ElseIf KKK2 = "SQLB06" Then : SQL_物料規格_SQLB06() : ElseIf KKK2 = "SQLB07" Then : SQL_物料規格_SQLB07() : ElseIf KKK2 = "SQLB08" Then : SQL_物料規格_SQLB08() : End If
  1059. da.Fill(ds3) : 物料規格_dgv.DataSource = ds3.Tables(0) : conn.Close() : 料號1_tb.Text = ""
  1060. 物料規格_dgv.Columns(0).Visible = False : 物料規格_dgv.Columns(1).Visible = False : 物料規格_dgv.Columns(3).Visible = False
  1061. 物料規格_dgv.Columns(2).Width = 17 : 物料規格_dgv.Columns(12).Visible = False : 物料規格_dgv.Columns(13).Visible = False : 物料規格_dgv.Columns(14).Visible = False
  1062. 物料規格_dgv.Columns(15).Visible = False
  1063. If KKK2 = "SQLB03" Then
  1064. 物料規格_dgv.Columns(7).Visible = False : 物料規格_dgv.Columns(8).Visible = False : 物料規格_dgv.Columns(9).Visible = False : 物料規格_dgv.Columns(10).Visible = False
  1065. 物料規格_dgv.Columns(11).Visible = False
  1066. 物料規格_dgv.Columns(4).FillWeight = 213 : 物料規格_dgv.Columns(5).FillWeight = 213 : 物料規格_dgv.Columns(6).FillWeight = 214
  1067. ElseIf KKK2 = "SQLB04" Then
  1068. 物料規格_dgv.Columns(7).Visible = True : 物料規格_dgv.Columns(8).Visible = False : 物料規格_dgv.Columns(9).Visible = False : 物料規格_dgv.Columns(10).Visible = False
  1069. 物料規格_dgv.Columns(11).Visible = False
  1070. 物料規格_dgv.Columns(4).FillWeight = 160 : 物料規格_dgv.Columns(5).FillWeight = 160 : 物料規格_dgv.Columns(6).FillWeight = 160 : 物料規格_dgv.Columns(7).FillWeight = 160
  1071. ElseIf KKK2 = "SQLB05" Then
  1072. 物料規格_dgv.Columns(7).Visible = True : 物料規格_dgv.Columns(8).Visible = True : 物料規格_dgv.Columns(9).Visible = False : 物料規格_dgv.Columns(10).Visible = False
  1073. 物料規格_dgv.Columns(11).Visible = False
  1074. 物料規格_dgv.Columns(4).FillWeight = 128 : 物料規格_dgv.Columns(5).FillWeight = 128 : 物料規格_dgv.Columns(6).FillWeight = 128 : 物料規格_dgv.Columns(7).FillWeight = 128
  1075. 物料規格_dgv.Columns(8).FillWeight = 128
  1076. ElseIf KKK2 = "SQLB06" Then
  1077. 物料規格_dgv.Columns(7).Visible = True : 物料規格_dgv.Columns(8).Visible = True : 物料規格_dgv.Columns(9).Visible = True : 物料規格_dgv.Columns(10).Visible = False
  1078. 物料規格_dgv.Columns(11).Visible = False
  1079. 物料規格_dgv.Columns(4).FillWeight = 106 : 物料規格_dgv.Columns(5).FillWeight = 107 : 物料規格_dgv.Columns(6).FillWeight = 106 : 物料規格_dgv.Columns(7).FillWeight = 107
  1080. 物料規格_dgv.Columns(8).FillWeight = 106 : 物料規格_dgv.Columns(9).FillWeight = 108
  1081. ElseIf KKK2 = "SQLB07" Then
  1082. 物料規格_dgv.Columns(7).Visible = True : 物料規格_dgv.Columns(8).Visible = True : 物料規格_dgv.Columns(9).Visible = True : 物料規格_dgv.Columns(10).Visible = True
  1083. 物料規格_dgv.Columns(11).Visible = False
  1084. 物料規格_dgv.Columns(4).FillWeight = 91 : 物料規格_dgv.Columns(5).FillWeight = 92 : 物料規格_dgv.Columns(6).FillWeight = 91 : 物料規格_dgv.Columns(7).FillWeight = 92
  1085. 物料規格_dgv.Columns(8).FillWeight = 91 : 物料規格_dgv.Columns(9).FillWeight = 92 : 物料規格_dgv.Columns(10).FillWeight = 91
  1086. ElseIf KKK2 = "SQLB08" Then
  1087. 物料規格_dgv.Columns(7).Visible = True : 物料規格_dgv.Columns(8).Visible = True : 物料規格_dgv.Columns(9).Visible = True : 物料規格_dgv.Columns(10).Visible = True
  1088. 物料規格_dgv.Columns(11).Visible = True
  1089. 物料規格_dgv.Columns(4).FillWeight = 80 : 物料規格_dgv.Columns(5).FillWeight = 80 : 物料規格_dgv.Columns(6).FillWeight = 80 : 物料規格_dgv.Columns(7).FillWeight = 80
  1090. 物料規格_dgv.Columns(8).FillWeight = 80 : 物料規格_dgv.Columns(9).FillWeight = 80 : 物料規格_dgv.Columns(10).FillWeight = 80 : 物料規格_dgv.Columns(11).FillWeight = 80
  1091. End If
  1092. 物料規格_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  1093. For i As Integer = 0 To 11 : 物料規格_dgv.Columns(i).ReadOnly = True : Next
  1094. For i As Integer = 0 To 物料規格_dgv.Rows.Count - 1
  1095. 物料規格_dgv.Rows(i).Cells("No").Value = i + 1 : 物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value = 0
  1096. If Not IsNumeric(物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value) Then : MGB(系統語言字典("G000-180-" & 語言), 1)
  1097. ElseIf Val(物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value) > 0 Then : 物料規格_dgv.Rows(i).Cells("Pilih").Value = True
  1098. ElseIf Val(物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value) <= 0 Then : 物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value = "0"
  1099. 物料規格_dgv.Rows(i).Cells("Pilih").Value = False
  1100. End If
  1101. Next i
  1102. End If
  1103. End Sub
  1104. Private Sub 物料清單1_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 物料清單1_dgv.CellClick
  1105. If e.RowIndex = -1 Then : Else : PA = 物料清單1_dgv(1, e.RowIndex).Value.ToString
  1106. PA1 = 物料清單1_dgv.Rows(e.RowIndex).Cells("群組碼").Value : PA2 = 物料清單1_dgv.Rows(e.RowIndex).Cells("料號原則").Value
  1107. SQL_物料圖庫_圖檔讀取()
  1108. While dr.Read() = True
  1109. Dim unused As Byte() = New Byte(-1) {}
  1110. Dim bytes As Byte() = DirectCast(dr.Item("圖檔"), Byte())
  1111. Dim oStream As New MemoryStream(bytes)
  1112. 物料圖_pb.Image = Bitmap.FromStream(oStream)
  1113. 物料圖1_pb.Image = Bitmap.FromStream(oStream)
  1114. End While : conn.Close() : 物料圖_pb.SizeMode = 4 : 物料圖1_pb.SizeMode = 4
  1115. '------------------------------------------------------------------------------------------------------------------------------------------
  1116. SQL_建築物料請購單申請_物料規格讀取()
  1117. If dr.Read() Then : KKK2 = dr("規格庫編號") : PA3 = dr("規格庫抬頭指定") : PA4 = dr("群組碼") : End If : conn.Close()
  1118. '------------------------------------------------------------------------------------------------------------------------------------------
  1119. SQL_規格庫抬頭讀取()
  1120. If dr.Read() Then : AAA1 = dr("A1") : AAA2 = dr("A2") : AAA3 = dr("A3") : AAA4 = dr("A4") : AAA5 = dr("A5") : AAA6 = dr("A6") : AAA7 = dr("A7") : AAA8 = dr("A8") : End If
  1121. conn.Close()
  1122. '------------------------------------------------------------------------------------------------------------------------------------------
  1123. Dim ds3 As New DataSet
  1124. 物料規格1_dgv.DataSource = Nothing : ds3.Clear()
  1125. 物料規格1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  1126. 物料規格1_dgv.ColumnHeadersHeight = 25 : 物料規格1_dgv.AllowUserToAddRows = False : 物料規格1_dgv.RowTemplate.Height = 20
  1127. If KKK2 = "SQLB03" Then : SQL_物料規格_SQLB03() : ElseIf KKK2 = "SQLB04" Then : SQL_物料規格_SQLB04() : ElseIf KKK2 = "SQLB05" Then : SQL_物料規格_SQLB05()
  1128. ElseIf KKK2 = "SQLB06" Then : SQL_物料規格_SQLB06() : ElseIf KKK2 = "SQLB07" Then : SQL_物料規格_SQLB07() : ElseIf KKK2 = "SQLB08" Then : SQL_物料規格_SQLB08() : End If
  1129. da.Fill(ds3) : 物料規格1_dgv.DataSource = ds3.Tables(0) : conn.Close() : 料號1_tb.Text = ""
  1130. 物料規格1_dgv.Columns(0).Visible = False : 物料規格1_dgv.Columns(1).Visible = False : 物料規格1_dgv.Columns(3).Visible = False
  1131. 物料規格1_dgv.Columns(2).Width = 17 : 物料規格1_dgv.Columns(12).Visible = False : 物料規格1_dgv.Columns(13).Visible = False : 物料規格1_dgv.Columns(14).Visible = False
  1132. 物料規格1_dgv.Columns(15).Visible = False
  1133. If KKK2 = "SQLB03" Then
  1134. 物料規格1_dgv.Columns(7).Visible = False : 物料規格1_dgv.Columns(8).Visible = False : 物料規格1_dgv.Columns(9).Visible = False : 物料規格1_dgv.Columns(10).Visible = False
  1135. 物料規格1_dgv.Columns(11).Visible = False
  1136. 物料規格1_dgv.Columns(4).FillWeight = 213 : 物料規格1_dgv.Columns(5).FillWeight = 213 : 物料規格1_dgv.Columns(6).FillWeight = 214
  1137. ElseIf KKK2 = "SQLB04" Then
  1138. 物料規格1_dgv.Columns(7).Visible = True : 物料規格1_dgv.Columns(8).Visible = False : 物料規格1_dgv.Columns(9).Visible = False : 物料規格1_dgv.Columns(10).Visible = False
  1139. 物料規格1_dgv.Columns(11).Visible = False
  1140. 物料規格1_dgv.Columns(4).FillWeight = 160 : 物料規格1_dgv.Columns(5).FillWeight = 160 : 物料規格1_dgv.Columns(6).FillWeight = 160 : 物料規格1_dgv.Columns(7).FillWeight = 160
  1141. ElseIf KKK2 = "SQLB05" Then
  1142. 物料規格1_dgv.Columns(7).Visible = True : 物料規格1_dgv.Columns(8).Visible = True : 物料規格1_dgv.Columns(9).Visible = False : 物料規格1_dgv.Columns(10).Visible = False
  1143. 物料規格1_dgv.Columns(11).Visible = False
  1144. 物料規格1_dgv.Columns(4).FillWeight = 128 : 物料規格1_dgv.Columns(5).FillWeight = 128 : 物料規格1_dgv.Columns(6).FillWeight = 128 : 物料規格1_dgv.Columns(7).FillWeight = 128
  1145. 物料規格1_dgv.Columns(8).FillWeight = 128
  1146. ElseIf KKK2 = "SQLB06" Then
  1147. 物料規格1_dgv.Columns(7).Visible = True : 物料規格1_dgv.Columns(8).Visible = True : 物料規格1_dgv.Columns(9).Visible = True : 物料規格1_dgv.Columns(10).Visible = False
  1148. 物料規格1_dgv.Columns(11).Visible = False
  1149. 物料規格1_dgv.Columns(4).FillWeight = 106 : 物料規格1_dgv.Columns(5).FillWeight = 107 : 物料規格1_dgv.Columns(6).FillWeight = 106 : 物料規格1_dgv.Columns(7).FillWeight = 107
  1150. 物料規格1_dgv.Columns(8).FillWeight = 106 : 物料規格1_dgv.Columns(9).FillWeight = 108
  1151. ElseIf KKK2 = "SQLB07" Then
  1152. 物料規格1_dgv.Columns(7).Visible = True : 物料規格1_dgv.Columns(8).Visible = True : 物料規格1_dgv.Columns(9).Visible = True : 物料規格1_dgv.Columns(10).Visible = True
  1153. 物料規格1_dgv.Columns(11).Visible = False
  1154. 物料規格1_dgv.Columns(4).FillWeight = 91 : 物料規格1_dgv.Columns(5).FillWeight = 92 : 物料規格1_dgv.Columns(6).FillWeight = 91 : 物料規格1_dgv.Columns(7).FillWeight = 92
  1155. 物料規格1_dgv.Columns(8).FillWeight = 91 : 物料規格1_dgv.Columns(9).FillWeight = 92 : 物料規格1_dgv.Columns(10).FillWeight = 91
  1156. ElseIf KKK2 = "SQLB08" Then
  1157. 物料規格1_dgv.Columns(7).Visible = True : 物料規格1_dgv.Columns(8).Visible = True : 物料規格1_dgv.Columns(9).Visible = True : 物料規格1_dgv.Columns(10).Visible = True
  1158. 物料規格1_dgv.Columns(11).Visible = True
  1159. 物料規格1_dgv.Columns(4).FillWeight = 80 : 物料規格1_dgv.Columns(5).FillWeight = 80 : 物料規格1_dgv.Columns(6).FillWeight = 80 : 物料規格1_dgv.Columns(7).FillWeight = 80
  1160. 物料規格1_dgv.Columns(8).FillWeight = 80 : 物料規格1_dgv.Columns(9).FillWeight = 80 : 物料規格1_dgv.Columns(10).FillWeight = 80 : 物料規格1_dgv.Columns(11).FillWeight = 80
  1161. End If
  1162. 物料規格1_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  1163. For i As Integer = 0 To 11 : 物料規格1_dgv.Columns(i).ReadOnly = True : Next
  1164. For i As Integer = 0 To 物料規格1_dgv.Rows.Count - 1
  1165. 物料規格1_dgv.Rows(i).Cells("No").Value = i + 1 : 物料規格1_dgv.Rows(i).Cells("申請數 Terapkan").Value = 0
  1166. If Not IsNumeric(物料規格1_dgv.Rows(i).Cells("申請數 Terapkan").Value) Then : MGB(系統語言字典("G000-180-" & 語言), 1)
  1167. ElseIf Val(物料規格1_dgv.Rows(i).Cells("申請數 Terapkan").Value) > 0 Then : 物料規格1_dgv.Rows(i).Cells("Pilih").Value = True
  1168. ElseIf Val(物料規格1_dgv.Rows(i).Cells("申請數 Terapkan").Value) <= 0 Then : 物料規格1_dgv.Rows(i).Cells("申請數 Terapkan").Value = "0"
  1169. 物料規格1_dgv.Rows(i).Cells("Pilih").Value = False
  1170. End If
  1171. Next i
  1172. End If
  1173. End Sub
  1174. Private Sub 報價係數_dgv_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 報價係數_dgv.MouseUp
  1175. 'If 報價總表_dgv.SelectedCells.Count = 1 Then : 通知訊息 = 報價總表_dgv.SelectedCells(0).ColumnIndex & " " & 報價總表_dgv.SelectedCells(0).RowIndex) : End If
  1176. If 報價係數_dgv.SelectedCells.Count = 1 Then : 已超出 = False : End If
  1177. If 報價係數_dgv.SelectedCells.Count > 0 Then
  1178. If 報價係數_dgv.SelectedCells(0).ColumnIndex = 4 Then
  1179. 係數單位_cb.Text = 報價係數_dgv.Rows(報價係數_dgv.SelectedCells(0).RowIndex).Cells(4).Value.ToString : CB選擇清單(係數單位_cb, 係數單位_cb.Text)
  1180. 報價係數_dgv.Rows(報價係數_dgv.SelectedCells(0).RowIndex).Cells(4).Value = 係數單位_cb.Text : 報價明細表_dgv_自動計算() : 報價總表_dgv_自動計算()
  1181. End If
  1182. End If
  1183. End Sub
  1184. Private Sub 物料規格_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 物料規格_dgv.CellClick
  1185. If e.RowIndex = -1 Then : Else
  1186. 料號1_tb.Text = 物料規格_dgv.Rows(e.RowIndex).Cells("Nomor_Bagian").Value.ToString : 料號_tb.Text = 物料規格_dgv.Rows(e.RowIndex).Cells("Nomor_Bagian").Value.ToString
  1187. PA47 = 料號_tb.Text : SQL_採購單價查詢()
  1188. If dr.Read Then : 最後採購日_tb.Text = Strings.Left(dr("採購日"), 4) & "/" & Strings.Mid(dr("採購日"), 5, 2) & "/" & Strings.Right(dr("採購日"), 2)
  1189. 歷史單價_tb.Text = Strings.Format(CInt(dr("單價").ToString), "#,##0") : Else : 最後採購日_tb.Text = "" : 歷史單價_tb.Text = "0"
  1190. End If
  1191. End If
  1192. End Sub
  1193. Private Sub 物料規格1_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 物料規格1_dgv.CellClick
  1194. If e.RowIndex = -1 Then : Else
  1195. 料號1_tb.Text = 物料規格1_dgv.Rows(e.RowIndex).Cells("Nomor_Bagian").Value.ToString : 料號_tb.Text = 物料規格1_dgv.Rows(e.RowIndex).Cells("Nomor_Bagian").Value.ToString
  1196. PA47 = 料號_tb.Text : SQL_採購單價查詢()
  1197. If dr.Read Then
  1198. 最後採購日_tb.Text = Strings.Left(dr("採購日"), 4) & "/" & Strings.Mid(dr("採購日"), 5, 2) & "/" & Strings.Right(dr("採購日"), 2)
  1199. 歷史單價_tb.Text = Strings.Format(CInt(dr("單價").ToString), "#,##0")
  1200. 最後採購日1_tb.Text = Strings.Left(dr("採購日"), 4) & "/" & Strings.Mid(dr("採購日"), 5, 2) & "/" & Strings.Right(dr("採購日"), 2)
  1201. 歷史單價1_tb.Text = Strings.Format(CInt(dr("單價").ToString), "#,##0")
  1202. Else
  1203. 最後採購日_tb.Text = "" : 歷史單價_tb.Text = "0" : 最後採購日1_tb.Text = "" : 歷史單價1_tb.Text = "0"
  1204. End If
  1205. End If
  1206. End Sub
  1207. Private Sub 報價總表_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 報價總表_dgv.CellClick
  1208. If e.RowIndex = -1 Then : Else : DGV位置1.Value = e.RowIndex
  1209. 總表流水_tb.Text = 報價總表_dgv.Rows(e.RowIndex).Cells("流水號").Value.ToString : ITEM1_cb.Text = 報價總表_dgv.Rows(e.RowIndex).Cells("ITEM").Value.ToString()
  1210. 單位_tb.Text = 報價總表_dgv.Rows(e.RowIndex).Cells("UNIT").Value.ToString() : 備註_tb.Text = 報價總表_dgv.Rows(e.RowIndex).Cells("REMARKS").Value.ToString()
  1211. 內容_tb.Text = 報價總表_dgv.Rows(e.RowIndex).Cells("DESCRIPTION").Value.ToString() : 選擇項_tb.Text = DGV位置1.Value
  1212. 合計項_cb.Text = 報價總表_dgv.Rows(e.RowIndex).Cells("DESCRIPTION").Value.ToString() : 選擇項3_tb.Text = 報價總表_dgv.Rows(e.RowIndex).Cells("排序").Value.ToString()
  1213. If 合計項_cb.Text = "小計(未稅) Subtotal(Excluding Tax)" Or 合計項_cb.Text = "稅金 10% Tax" Or 合計項_cb.Text = "稅金 11% Tax" Or
  1214. Strings.Left(合計項_cb.Text, 3) = "管理費" Or Strings.Left(合計項_cb.Text, 2) = "折讓" Or 合計項_cb.Text = "總計 Grand Total" Or
  1215. 合計項_cb.Text = "總計(含稅) Grand Total(Including Tax)" Then
  1216. Else : 合計項_cb.Text = "" : End If
  1217. DGV_X = e.ColumnIndex : DGV_Y = e.RowIndex : 選擇項_tb.Text = e.RowIndex
  1218. If DGV_X = 4 Or DGV_X = 5 Or DGV_X = 6 Then
  1219. If 目前選擇 = "寫入資料" Then : X_3_tb.Text = e.ColumnIndex : Y_3_tb.Text = e.RowIndex : Else
  1220. If IsDBNull(報價總表_dgv.Rows(e.RowIndex).Cells(e.ColumnIndex).Value) Then : 報價總表_dgv.Rows(e.RowIndex).Cells(e.ColumnIndex).Value = 0 : End If
  1221. End If
  1222. End If
  1223. End If
  1224. End Sub
  1225. Private Sub 報價總表_dgv_CellDoubleClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 報價總表_dgv.CellDoubleClick
  1226. If e.RowIndex = -1 Then : Else
  1227. If 視窗2_pl.Visible = True Then : DGV_X = e.ColumnIndex : DGV_Y = e.RowIndex : 選擇項_tb.Text = e.RowIndex : End If
  1228. 連動編號_tb.Text = 報價總表_dgv.Rows(e.RowIndex).Cells("明細連動").Value.ToString
  1229. Me.TabControl1.SelectedTab = Me.工程合約報價明細_tc
  1230. Dim 查詢 As Boolean
  1231. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  1232. If 報價總表_dgv.Rows(e.RowIndex).Cells("DESCRIPTION").Value.ToString() = 報價明細表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString() Then
  1233. 報價明細表_dgv.CurrentCell = 報價明細表_dgv.Rows(i).Cells(1) : 查詢 = True : Exit For : Else : 查詢 = False
  1234. End If
  1235. Next
  1236. If 查詢 = False Then
  1237. If DGV位置2.Value >= 報價明細表_dgv.Rows.Count Then : DGV位置2.Value = 報價明細表_dgv.Rows.Count - 1 : End If
  1238. If DGV位置2.Value > 0 Then : 報價明細表_dgv.CurrentCell = 報價明細表_dgv.Rows(DGV位置2.Value).Cells(1) : End If
  1239. End If
  1240. End If
  1241. End Sub
  1242. Private Sub 報價總表_dgv_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 報價總表_dgv.MouseUp
  1243. 'If 報價總表_dgv.SelectedCells.Count = 1 Then : 通知訊息 = 報價總表_dgv.SelectedCells(0).ColumnIndex & " " & 報價總表_dgv.SelectedCells(0).RowIndex) : End If
  1244. If 報價總表_dgv.SelectedCells.Count = 1 Then : 已超出 = False : End If
  1245. If 報價總表_dgv.SelectedCells.Count > 0 Then
  1246. '--------------------------------加總計算--------------------------------------------------------------------------------------------------------------------
  1247. If 報價總表_dgv.SelectedCells(0).ColumnIndex = 4 Or 報價總表_dgv.SelectedCells(0).ColumnIndex = 5 Or 報價總表_dgv.SelectedCells(0).ColumnIndex = 6 Then
  1248. If 已超出 = False Then : Dim x As Double = 0
  1249. For i As Integer = 0 To 報價總表_dgv.SelectedCells.Count - 1
  1250. Dim 變數 As String = "" : Dim 取變數 As String
  1251. 取變數 = 報價總表_dgv.Rows(報價總表_dgv.SelectedCells.Item(i).RowIndex).Cells(報價總表_dgv.SelectedCells.Item(i).ColumnIndex).Value
  1252. For ii As Integer = 1 To Len(取變數)
  1253. If ii = 1 Then : 變數 = Strings.Left(取變數, ii) : Else : If Strings.Mid(取變數, ii, 1) <> "," Then : 變數 &= Strings.Mid(取變數, ii, 1) : End If : End If
  1254. Next : x += Val(變數)
  1255. Next i : HX_PGS_ERP_SYS.合計_TSSL.Text = "Total : " & Strings.Format(x, "#,##0")
  1256. Else : HX_PGS_ERP_SYS.合計_TSSL.Text = "Total : " & Strings.Format(0, "#,##0") : End If
  1257. Else : 已超出 = True : HX_PGS_ERP_SYS.合計_TSSL.Text = "Total : " & Strings.Format(0, "#,##0") : End If
  1258. '--------------------------------點擊功能--------------------------------------------------------------------------------------------------------------------
  1259. If 報價總表_dgv.SelectedCells(0).ColumnIndex = 11 Then : PA20 = "1" : 新增資料()
  1260. ElseIf 報價總表_dgv.SelectedCells(0).ColumnIndex = 2 Then
  1261. Dim 位置 As Integer : 總表編輯_bt.PerformClick() : 位置 = 報價總表_dgv.SelectedCells(0).RowIndex : DGV位置1.Value = 位置
  1262. 總表流水_tb.Text = 報價總表_dgv.Rows(位置).Cells("流水號").Value.ToString : ITEM1_cb.Text = 報價總表_dgv.Rows(位置).Cells("ITEM").Value.ToString()
  1263. 單位_tb.Text = 報價總表_dgv.Rows(位置).Cells("UNIT").Value.ToString() : 備註_tb.Text = 報價總表_dgv.Rows(位置).Cells("REMARKS").Value.ToString()
  1264. 內容_tb.Text = 報價總表_dgv.Rows(位置).Cells("DESCRIPTION").Value.ToString() : 選擇項_tb.Text = 位置
  1265. 合計項_cb.Text = 報價總表_dgv.Rows(位置).Cells("DESCRIPTION").Value.ToString() : 選擇項3_tb.Text = 報價總表_dgv.Rows(位置).Cells("排序").Value.ToString()
  1266. 數量_tb.Text = 報價總表_dgv.Rows(位置).Cells("QTY").Value.ToString()
  1267. If 合計項_cb.Text = "小計(未稅) Subtotal(Excluding Tax)" Or 合計項_cb.Text = "稅金 10% Tax" Or 合計項_cb.Text = "稅金 11% Tax" Or
  1268. Strings.Left(合計項_cb.Text, 3) = "管理費" Or Strings.Left(合計項_cb.Text, 2) = "折讓" Or 合計項_cb.Text = "總計 Grand Total" Or
  1269. 合計項_cb.Text = "總計(含稅) Grand Total(Including Tax)" Then
  1270. Else : 合計項_cb.Text = "" : End If
  1271. ElseIf 報價總表_dgv.SelectedCells(0).ColumnIndex = 13 Then : 總表選擇刪除_bt.PerformClick() : End If
  1272. End If
  1273. End Sub
  1274. Private Sub 報價總表_dgv_CellContentCl(sender As Object, e As DataGridViewCellEventArgs) Handles 報價總表_dgv.CellEndEdit
  1275. If 啟動運算 = True Then : 報價總表_dgv_自動計算() : End If
  1276. End Sub
  1277. Private Sub 重新排序_總表()
  1278. For I As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  1279. If I < 10 Then : 報價總表_dgv.Rows(I).Cells("排序").Value = "00" & I
  1280. ElseIf I > 9 And I < 100 Then : 報價總表_dgv.Rows(I).Cells("排序").Value = "0" & I
  1281. ElseIf I > 99 Then : 報價總表_dgv.Rows(I).Cells("排序").Value = I : End If
  1282. Next
  1283. End Sub
  1284. Private Sub 上移1_bt_Click(sender As Object, e As EventArgs) Handles 上移1_bt.Click
  1285. 選擇項3_tb.Text = 報價總表_dgv.Rows(選擇項_tb.Text).Cells(0).Value.ToString
  1286. If CLng(選擇項_tb.Text) = 1 Then
  1287. If CLng(選擇項3_tb.Text) <= 8 Then : 選擇項3_tb.Text = "000" & CLng(選擇項3_tb.Text) - 1
  1288. ElseIf CLng(選擇項3_tb.Text) > 8 And CLng(選擇項3_tb.Text) <= 98 Then : 選擇項3_tb.Text = "00" & CLng(選擇項3_tb.Text) - 1
  1289. ElseIf CLng(選擇項3_tb.Text) > 98 And CLng(選擇項3_tb.Text) <= 998 Then : 選擇項3_tb.Text = "0" & CLng(選擇項3_tb.Text) - 1
  1290. ElseIf CLng(選擇項3_tb.Text) > 998 Then : 選擇項3_tb.Text = CLng(選擇項3_tb.Text) - 1 : End If
  1291. 報價總表_dgv.Rows(選擇項_tb.Text).Cells(0).Value = 選擇項3_tb.Text : 報價總表_dgv.Rows(0).Cells(0).Value = "0000_1"
  1292. Else
  1293. If CLng(選擇項3_tb.Text) <= 8 Then : 選擇項3_tb.Text = "000" & CLng(選擇項3_tb.Text) - 2 & "_1"
  1294. ElseIf CLng(選擇項3_tb.Text) > 8 And CLng(選擇項3_tb.Text) <= 98 Then : 選擇項3_tb.Text = "00" & CLng(選擇項3_tb.Text) - 2 & "_1"
  1295. ElseIf CLng(選擇項3_tb.Text) > 98 And CLng(選擇項3_tb.Text) <= 998 Then : 選擇項3_tb.Text = "0" & CLng(選擇項3_tb.Text) - 2 & "_1"
  1296. ElseIf CLng(選擇項3_tb.Text) > 998 Then : 選擇項3_tb.Text = CLng(選擇項3_tb.Text) - 2 & "_1" : End If
  1297. 報價總表_dgv.Rows(選擇項_tb.Text).Cells(0).Value = 選擇項3_tb.Text
  1298. End If
  1299. 選擇項_tb.Text = CLng(選擇項_tb.Text) - 1 : 報價總表_dgv.Sort(報價總表_dgv.Columns(0), System.ComponentModel.ListSortDirection.Ascending)
  1300. 報價總表_dgv.CurrentCell = 報價總表_dgv.Rows(選擇項_tb.Text).Cells(2) : 重新排序_總表()
  1301. If CLng(選擇項_tb.Text) <= 8 Then : 選擇項3_tb.Text = "000" & CLng(選擇項_tb.Text)
  1302. ElseIf CLng(選擇項_tb.Text) > 8 And CLng(選擇項_tb.Text) <= 98 Then : 選擇項3_tb.Text = "00" & CLng(選擇項_tb.Text)
  1303. ElseIf CLng(選擇項_tb.Text) > 98 And CLng(選擇項_tb.Text) <= 998 Then : 選擇項3_tb.Text = "0" & CLng(選擇項_tb.Text)
  1304. ElseIf CLng(選擇項_tb.Text) > 998 Then : 選擇項3_tb.Text = CLng(選擇項_tb.Text) : End If : 報價總表_dgv_自動計算()
  1305. End Sub
  1306. Private Sub 下移1_bt_Click(sender As Object, e As EventArgs) Handles 下移1_bt.Click
  1307. Dim 最大 As Integer = 報價總表_dgv.Rows.Count - 1
  1308. If CLng(選擇項_tb.Text) = 最大 Then : Else
  1309. 選擇項3_tb.Text = 報價總表_dgv.Rows(選擇項_tb.Text).Cells(0).Value.ToString
  1310. If CLng(選擇項3_tb.Text) <= 8 Then : 選擇項3_tb.Text = "00" & CLng(選擇項3_tb.Text) + 1 & "-1"
  1311. ElseIf CLng(選擇項3_tb.Text) > 8 And CLng(選擇項3_tb.Text) <= 98 Then : 選擇項3_tb.Text = "0" & CLng(選擇項3_tb.Text) + 1 & "-1"
  1312. ElseIf CLng(選擇項3_tb.Text) > 98 Then : 選擇項3_tb.Text = CLng(選擇項3_tb.Text) + 1 & "-1" : End If
  1313. 報價總表_dgv.Rows(選擇項_tb.Text).Cells(0).Value = 選擇項3_tb.Text : 選擇項_tb.Text = CLng(選擇項_tb.Text) + 1
  1314. 報價總表_dgv.Sort(報價總表_dgv.Columns(0), System.ComponentModel.ListSortDirection.Ascending)
  1315. 報價總表_dgv.CurrentCell = 報價總表_dgv.Rows(選擇項_tb.Text).Cells(2) : 重新排序_總表()
  1316. If CLng(選擇項_tb.Text) <= 8 Then : 選擇項3_tb.Text = "00" & CLng(選擇項_tb.Text)
  1317. ElseIf CLng(選擇項_tb.Text) > 8 And CLng(選擇項_tb.Text) <= 98 Then : 選擇項3_tb.Text = "0" & CLng(選擇項_tb.Text)
  1318. ElseIf CLng(選擇項_tb.Text) > 98 Then : 選擇項3_tb.Text = CLng(選擇項_tb.Text) : End If : 報價總表_dgv_自動計算()
  1319. End If
  1320. End Sub
  1321. Private Sub 報價明細表_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 報價明細表_dgv.CellClick
  1322. If e.RowIndex = -1 Then : Else : 選擇項1_tb.Text = e.RowIndex : DGV位置2.Value = 選擇項1_tb.Text : DGV_X = 選擇項1_tb.Text : DGV_Y = 選擇項1_tb.Text
  1323. If 啟用批量選擇_ch.Checked = True Then
  1324. If 報價明細表_dgv(表頭(10), e.RowIndex).Value = True Then
  1325. If 深色風格 = False Then
  1326. 報價明細表_dgv(表頭(10), e.RowIndex).Value = False : 報價明細表_dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.White
  1327. Else
  1328. 報價明細表_dgv(表頭(10), e.RowIndex).Value = False : 報價明細表_dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.Black
  1329. End If
  1330. Else
  1331. If 深色風格 = False Then
  1332. 報價明細表_dgv(表頭(10), e.RowIndex).Value = True : 報價明細表_dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.LightBlue
  1333. Else
  1334. 報價明細表_dgv(表頭(10), e.RowIndex).Value = True : 報價明細表_dgv.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.Blue
  1335. End If
  1336. End If
  1337. End If
  1338. 報價明細表選擇()
  1339. If DGV_X = 4 Or DGV_X = 5 Or DGV_X = 6 Or DGV_X = 8 Or DGV_X = 9 Or DGV_X = 10 Or DGV_X = 11 Or DGV_X = 12 Or DGV_X = 13 Or DGV_X = 14 Or DGV_X = 15 Or DGV_X = 16 Or DGV_X = 17 Then
  1340. If 目前選擇 = "寫入資料" Then : X_2_tb.Text = e.ColumnIndex : Y_2_tb.Text = 選擇項1_tb.Text : Else
  1341. If IsDBNull(報價明細表_dgv.Rows(選擇項1_tb.Text).Cells(e.ColumnIndex).Value) Then : 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells(e.ColumnIndex).Value = 0 : End If
  1342. 數值4_tb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells(e.ColumnIndex).Value
  1343. End If
  1344. End If
  1345. End If
  1346. End Sub
  1347. Private Sub 報價明細表選擇()
  1348. 合計項1_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("DESCRIPTION").Value.ToString()
  1349. If Strings.Left(合計項1_cb.Text, 5) = "Total" Then : Else : 合計項1_cb.Text = "" : End If
  1350. 項目_tb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("層級").Value.ToString()
  1351. 地點_中_tb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("地點_中").Value.ToString() : 地點_印_tb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("地點_印").Value.ToString()
  1352. 主項_中_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("主項_中").Value.ToString() : 主項_印_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("主項_印").Value.ToString()
  1353. 主名_中_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("主名_中").Value.ToString() : 主名_印_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("主名_印").Value.ToString()
  1354. 項名_中_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("項名_中").Value.ToString() : 項名_印_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("項名_印").Value.ToString()
  1355. 描述_中_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("描述_中").Value.ToString() : 描述_印_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("描述_印").Value.ToString()
  1356. 其他_中_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("其他_中").Value.ToString() : 其他_印_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("其他_印").Value.ToString()
  1357. 明細表流水_tb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("流水號").Value.ToString : ITEM2_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("ITEM").Value.ToString()
  1358. 單位1_tb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("UNIT").Value.ToString() : 備註1_tb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("REMARKS").Value.ToString()
  1359. 內容1_tb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("DESCRIPTION").Value.ToString() : 選擇項2_tb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("排序").Value.ToString()
  1360. ITEM3_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("ITEM").Value.ToString() : 不計_ch.Checked = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("不計").Value
  1361. 料號_tb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells(表頭(9)).Value.ToString() : 申請數_nud.Value = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("QTY").Value.ToString()
  1362. 單位2_tb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("UNIT").Value.ToString() : 實際數量_nud.Value = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("實際數量").Value.ToString()
  1363. 材料成本_nud.Value = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("材料成本單價").Value.ToString() : 係數清單_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("材料係數").Value.ToString()
  1364. 工資成本_nud.Value = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("工資成本單價").Value.ToString() : 工資單價_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("工資單價").Value.ToString()
  1365. 工資系數_cb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("工資係數").Value.ToString()
  1366. 物料圖1_pb.Image = Nothing
  1367. If 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("料號原則").Value.ToString = "" Then : Else
  1368. PA2 = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("料號原則").Value.ToString : SQL_物料圖庫_圖檔讀取一()
  1369. While dr.Read() = True
  1370. Dim unused As Byte() = New Byte(-1) {}
  1371. Dim bytes As Byte() = DirectCast(dr.Item("圖檔"), Byte())
  1372. Dim oStream As New MemoryStream(bytes)
  1373. 物料圖1_pb.Image = Bitmap.FromStream(oStream)
  1374. End While : conn.Close() : 物料圖1_pb.SizeMode = 4
  1375. End If
  1376. End Sub
  1377. Private Sub 上移2_bt_Click(sender As Object, e As EventArgs) Handles 上移2_bt.Click
  1378. If 選擇項1_tb.Text = "" Then : Else
  1379. If CInt(選擇項1_tb.Text) <= 0 Then : Else
  1380. 選擇項1_tb.Text = CInt(選擇項1_tb.Text) - 1 : 報價明細表選擇() : 報價明細表_dgv.CurrentCell = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("DESCRIPTION")
  1381. End If
  1382. End If
  1383. End Sub
  1384. Private Sub 下移2_bt_Click(sender As Object, e As EventArgs) Handles 下移2_bt.Click
  1385. If 選擇項1_tb.Text = "" Then : Else
  1386. If CInt(選擇項1_tb.Text) >= 報價明細表_dgv.Rows.Count - 1 Then : Else
  1387. 選擇項1_tb.Text = CInt(選擇項1_tb.Text) + 1 : 報價明細表選擇() : 報價明細表_dgv.CurrentCell = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("DESCRIPTION")
  1388. End If
  1389. End If
  1390. End Sub
  1391. Private Sub 報價明細表_dgv_CellContentCl(sender As Object, e As DataGridViewCellEventArgs) Handles 報價明細表_dgv.CellEndEdit
  1392. If 啟動運算 = True Then : 報價明細表_dgv_物料顯示() : 報價明細表_dgv_自動計算() : 報價總表_dgv_自動計算() : End If
  1393. End Sub
  1394. Private Sub 報價明細表_dgv_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 報價明細表_dgv.MouseUp
  1395. 'If 報價明細表_dgv.SelectedCells.Count = 1 Then : MGB(報價明細表_dgv.SelectedCells(0).ColumnIndex & " " & 報價明細表_dgv.SelectedCells(0).RowIndex, 1) : End If
  1396. If 報價明細表_dgv.SelectedCells.Count = 1 Then : 已超出 = False : End If
  1397. If 報價明細表_dgv.SelectedCells.Count > 0 Then
  1398. If 報價明細表_dgv.SelectedCells(0).ColumnIndex = 2 Then
  1399. If 視窗3_pl.Visible = False Then : 明細表編輯_bt.PerformClick() : Else : End If
  1400. ElseIf 報價明細表_dgv.SelectedCells(0).ColumnIndex = 4 Or 報價明細表_dgv.SelectedCells(0).ColumnIndex = 5 Or 報價明細表_dgv.SelectedCells(0).ColumnIndex = 6 Or
  1401. 報價明細表_dgv.SelectedCells(0).ColumnIndex = 8 Or 報價明細表_dgv.SelectedCells(0).ColumnIndex = 9 Or 報價明細表_dgv.SelectedCells(0).ColumnIndex = 10 Or
  1402. 報價明細表_dgv.SelectedCells(0).ColumnIndex = 11 Or 報價明細表_dgv.SelectedCells(0).ColumnIndex = 12 Or 報價明細表_dgv.SelectedCells(0).ColumnIndex = 13 Or
  1403. 報價明細表_dgv.SelectedCells(0).ColumnIndex = 14 Or 報價明細表_dgv.SelectedCells(0).ColumnIndex = 15 Or 報價明細表_dgv.SelectedCells(0).ColumnIndex = 16 Or
  1404. 報價明細表_dgv.SelectedCells(0).ColumnIndex = 17 Then
  1405. If 已超出 = False Then
  1406. Dim x As Double = 0
  1407. For i As Integer = 0 To 報價明細表_dgv.SelectedCells.Count - 1
  1408. Dim 變數 As String = "" : Dim 取變數 As String
  1409. 取變數 = 報價明細表_dgv.Rows(報價明細表_dgv.SelectedCells.Item(i).RowIndex).Cells(報價明細表_dgv.SelectedCells.Item(i).ColumnIndex).Value
  1410. For ii As Integer = 1 To Len(取變數)
  1411. If ii = 1 Then : 變數 = Strings.Left(取變數, ii) : Else : If Strings.Mid(取變數, ii, 1) <> "," Then : 變數 &= Strings.Mid(取變數, ii, 1) : End If : End If
  1412. Next : x += Val(變數)
  1413. Next i : HX_PGS_ERP_SYS.合計_TSSL.Text = "Total : " & Strings.Format(x, "#,##0")
  1414. Else : HX_PGS_ERP_SYS.合計_TSSL.Text = "Total : 0" : End If
  1415. ElseIf 報價明細表_dgv.SelectedCells(0).ColumnIndex = 32 Then
  1416. 係數清單_cb.Text = 報價明細表_dgv.Rows(報價明細表_dgv.SelectedCells(0).RowIndex).Cells(32).Value.ToString : CB選擇清單_可選空白(係數清單_cb)
  1417. 報價明細表_dgv.Rows(報價明細表_dgv.SelectedCells(0).RowIndex).Cells(32).Value = 係數清單_cb.Text : 報價明細表_dgv_物料顯示() : 報價明細表_dgv_自動計算() : 報價總表_dgv_自動計算()
  1418. ElseIf 報價明細表_dgv.SelectedCells(0).ColumnIndex = 77 Then
  1419. 係數清單_cb.Text = 報價明細表_dgv.Rows(報價明細表_dgv.SelectedCells(0).RowIndex).Cells(77).Value.ToString : CB選擇清單_可選空白(工資系數_cb)
  1420. 報價明細表_dgv.Rows(報價明細表_dgv.SelectedCells(0).RowIndex).Cells(77).Value = 工資系數_cb.Text : 報價明細表_dgv_物料顯示() : 報價明細表_dgv_自動計算() : 報價總表_dgv_自動計算()
  1421. ElseIf 報價明細表_dgv.SelectedCells(0).ColumnIndex = 78 Then
  1422. 係數清單_cb.Text = 報價明細表_dgv.Rows(報價明細表_dgv.SelectedCells(0).RowIndex).Cells(78).Value.ToString : CB選擇清單_可選空白(工資單價_cb)
  1423. 報價明細表_dgv.Rows(報價明細表_dgv.SelectedCells(0).RowIndex).Cells(78).Value = 工資單價_cb.Text : 報價明細表_dgv_物料顯示() : 報價明細表_dgv_自動計算() : 報價總表_dgv_自動計算()
  1424. Else
  1425. 已超出 = True : HX_PGS_ERP_SYS.合計_TSSL.Text = "Total : 0"
  1426. End If
  1427. End If
  1428. End Sub
  1429. Private Sub 新增資料3_bt_Click(sender As Object, e As EventArgs) Handles 新增資料3_bt.Click
  1430. If 選擇項1_tb.Text = "" Then : Else
  1431. 報價明細表存檔()
  1432. PA = 合約編號_tb.Text : PA2 = "" : PA3 = "" : PA4 = "" : PA5 = "0" : PA6 = "0" : PA7 = "0" : PA8 = "" : PA10 = "" : PA11 = "" : PA12 = ""
  1433. PA13 = "" : PA14 = "" : PA15 = "" : PA16 = "" : BL = False : BL1 = False : BL2 = False : BL3 = False : BL4 = False : BL5 = False : BL6 = False
  1434. BL7 = False : BL8 = False : BL9 = True : 合約報價明細表_最後一筆資料()
  1435. PA1 = 選擇項2_tb.Text & "-1" : PB14 = 工資系數_cb.Text : PB15 = 工資單價_cb.Text
  1436. SQL_合約報價明細表_新增資料() : Set_合約報價明細表() : 重新排序() : 報價明細表存檔()
  1437. End If
  1438. End Sub
  1439. Private Sub 明細表選擇刪除2_bt_Click(sender As Object, e As EventArgs) Handles 明細表選擇刪除2_bt.Click
  1440. If 選擇項1_tb.Text = "" Then : Else
  1441. MGB(系統語言字典("H102-103-" & 語言), 2)
  1442. If 訊息回應 = "YES" Then
  1443. 報價明細表存檔()
  1444. PA9 = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells("流水號").Value.ToString
  1445. SQL_合約報價明細表_刪除資料() : Set_合約報價明細表()
  1446. End If
  1447. End If
  1448. End Sub
  1449. Private Sub 報價明細表_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 報價明細表_dgv.RowPostPaint
  1450. If 深色風格 = False Then
  1451. Dim linePen As New Pen(Color.Blue, 3)
  1452. If e.RowIndex = 報價明細表_dgv.Rows.Count - 1 Then : Exit Sub : Else
  1453. If Strings.Left(報價明細表_dgv("DESCRIPTION", e.RowIndex).Value.ToString, 5) = "Total" Then
  1454. Dim startX As Integer = IIf(報價明細表_dgv.RowHeadersVisible, 報價明細表_dgv.RowHeadersWidth, 0) : Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  1455. Dim endX As Integer = startX + 報價明細表_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 報價明細表_dgv.HorizontalScrollingOffset
  1456. e.Graphics.DrawLine(linePen, startX, startY, endX, startY) : Exit Sub
  1457. End If
  1458. End If
  1459. Else
  1460. Dim linePen As New Pen(Color.Yellow, 3)
  1461. If e.RowIndex = 報價明細表_dgv.Rows.Count - 1 Then : Exit Sub : Else
  1462. If Strings.Left(報價明細表_dgv("DESCRIPTION", e.RowIndex).Value.ToString, 5) = "Total" Then
  1463. Dim startX As Integer = IIf(報價明細表_dgv.RowHeadersVisible, 報價明細表_dgv.RowHeadersWidth, 0) : Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  1464. Dim endX As Integer = startX + 報價明細表_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 報價明細表_dgv.HorizontalScrollingOffset
  1465. e.Graphics.DrawLine(linePen, startX, startY, endX, startY) : Exit Sub
  1466. End If
  1467. End If
  1468. End If
  1469. End Sub
  1470. Private Sub 重新排序()
  1471. For I As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  1472. If I < 10 Then : 報價明細表_dgv.Rows(I).Cells("排序").Value = "000" & I
  1473. ElseIf I > 9 And I < 100 Then : 報價明細表_dgv.Rows(I).Cells("排序").Value = "00" & I
  1474. ElseIf I > 99 And I < 1000 Then : 報價明細表_dgv.Rows(I).Cells("排序").Value = "0" & I
  1475. ElseIf I > 999 Then : 報價明細表_dgv.Rows(I).Cells("排序").Value = I : End If
  1476. Next
  1477. End Sub
  1478. Private Sub 上移_bt_Click(sender As Object, e As EventArgs) Handles 上移_bt.Click
  1479. If CLng(選擇項1_tb.Text) = 0 Then : Else : 選擇項2_tb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells(0).Value.ToString
  1480. If CLng(選擇項1_tb.Text) = 1 Then
  1481. If CLng(選擇項2_tb.Text) <= 8 Then : 選擇項2_tb.Text = "000" & CLng(選擇項2_tb.Text) - 1
  1482. ElseIf CLng(選擇項2_tb.Text) > 8 And CLng(選擇項2_tb.Text) <= 98 Then : 選擇項2_tb.Text = "00" & CLng(選擇項2_tb.Text) - 1
  1483. ElseIf CLng(選擇項2_tb.Text) > 98 And CLng(選擇項2_tb.Text) <= 998 Then : 選擇項2_tb.Text = "0" & CLng(選擇項2_tb.Text) - 1
  1484. ElseIf CLng(選擇項2_tb.Text) > 98 Then : 選擇項2_tb.Text = CLng(選擇項2_tb.Text) - 1 : End If
  1485. 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells(0).Value = 選擇項2_tb.Text : 報價明細表_dgv.Rows(0).Cells(0).Value = "0000_1"
  1486. Else
  1487. If CLng(選擇項2_tb.Text) <= 8 Then : 選擇項2_tb.Text = "000" & CLng(選擇項2_tb.Text) - 2 & "_1"
  1488. ElseIf CLng(選擇項2_tb.Text) > 8 And CLng(選擇項2_tb.Text) <= 98 Then : 選擇項2_tb.Text = "00" & CLng(選擇項2_tb.Text) - 2 & "_1"
  1489. ElseIf CLng(選擇項2_tb.Text) > 98 And CLng(選擇項2_tb.Text) <= 998 Then : 選擇項2_tb.Text = "0" & CLng(選擇項2_tb.Text) - 2 & "_1"
  1490. ElseIf CLng(選擇項2_tb.Text) > 998 Then : 選擇項2_tb.Text = CLng(選擇項2_tb.Text) - 2 & "_1" : End If
  1491. 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells(0).Value = 選擇項2_tb.Text
  1492. End If
  1493. 選擇項1_tb.Text = CLng(選擇項1_tb.Text) - 1 : 報價明細表_dgv.Sort(報價明細表_dgv.Columns(0), System.ComponentModel.ListSortDirection.Ascending)
  1494. 報價明細表_dgv.CurrentCell = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells(2) : 重新排序()
  1495. If CLng(選擇項1_tb.Text) <= 8 Then : 選擇項2_tb.Text = "000" & CLng(選擇項1_tb.Text)
  1496. ElseIf CLng(選擇項1_tb.Text) > 8 And CLng(選擇項1_tb.Text) <= 98 Then : 選擇項2_tb.Text = "00" & CLng(選擇項1_tb.Text)
  1497. ElseIf CLng(選擇項1_tb.Text) > 98 And CLng(選擇項1_tb.Text) <= 998 Then : 選擇項2_tb.Text = "0" & CLng(選擇項1_tb.Text)
  1498. ElseIf CLng(選擇項1_tb.Text) > 998 Then : 選擇項2_tb.Text = CLng(選擇項1_tb.Text) : End If : 報價明細表_dgv_自動計算()
  1499. End If
  1500. End Sub
  1501. Private Sub 下移_bt_Click(sender As Object, e As EventArgs) Handles 下移_bt.Click
  1502. Dim 最大 As Integer = 報價明細表_dgv.Rows.Count - 1
  1503. If CLng(選擇項1_tb.Text) = 最大 Then : Else
  1504. 選擇項2_tb.Text = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells(0).Value.ToString
  1505. If CLng(選擇項2_tb.Text) <= 8 Then : 選擇項2_tb.Text = "000" & CLng(選擇項2_tb.Text) + 1 & "-1"
  1506. ElseIf CLng(選擇項2_tb.Text) > 8 And CLng(選擇項2_tb.Text) <= 98 Then : 選擇項2_tb.Text = "00" & CLng(選擇項2_tb.Text) + 1 & "-1"
  1507. ElseIf CLng(選擇項2_tb.Text) > 98 And CLng(選擇項2_tb.Text) <= 998 Then : 選擇項2_tb.Text = "0" & CLng(選擇項2_tb.Text) + 1 & "-1"
  1508. ElseIf CLng(選擇項2_tb.Text) > 998 Then : 選擇項2_tb.Text = CLng(選擇項2_tb.Text) + 1 & "-1" : End If
  1509. 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells(0).Value = 選擇項2_tb.Text : 選擇項1_tb.Text = CLng(選擇項1_tb.Text) + 1
  1510. 報價明細表_dgv.Sort(報價明細表_dgv.Columns(0), System.ComponentModel.ListSortDirection.Ascending)
  1511. 報價明細表_dgv.CurrentCell = 報價明細表_dgv.Rows(選擇項1_tb.Text).Cells(2) : 重新排序()
  1512. If CLng(選擇項1_tb.Text) <= 8 Then : 選擇項2_tb.Text = "000" & CLng(選擇項1_tb.Text)
  1513. ElseIf CLng(選擇項1_tb.Text) > 8 And CLng(選擇項1_tb.Text) <= 98 Then : 選擇項2_tb.Text = "00" & CLng(選擇項1_tb.Text)
  1514. ElseIf CLng(選擇項1_tb.Text) > 98 And CLng(選擇項1_tb.Text) <= 998 Then : 選擇項2_tb.Text = "0" & CLng(選擇項1_tb.Text)
  1515. ElseIf CLng(選擇項1_tb.Text) > 998 Then : 選擇項2_tb.Text = CLng(選擇項1_tb.Text) : End If : 報價明細表_dgv_自動計算()
  1516. End If
  1517. End Sub
  1518. Private Sub 報價係數1_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 報價係數1_dgv.CellClick
  1519. If e.RowIndex = -1 Then : Else
  1520. If IsDBNull(報價係數1_dgv.Rows(e.RowIndex).Cells(3).Value) Then : 數值4_tb.Text = 0 : Else : 數值4_tb.Text = 報價係數1_dgv.Rows(e.RowIndex).Cells(3).Value : End If
  1521. End If
  1522. End Sub
  1523. Private Sub 報價明細表1_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 報價明細表1_dgv.CellClick
  1524. If e.RowIndex = -1 Then : Else
  1525. ITEM1_cb.Text = 報價明細表1_dgv.Rows(e.RowIndex).Cells("ITEM").Value.ToString() : 內容_tb.Text = 報價明細表1_dgv.Rows(e.RowIndex).Cells("DESCRIPTION").Value.ToString()
  1526. 連動編號_tb.Text = ""
  1527. End If
  1528. End Sub
  1529. Private Sub 報價明細表3_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 報價明細表3_dgv.CellClick
  1530. If e.RowIndex = -1 Then : Else
  1531. 報價總表_dgv.Rows(DGV位置1.Value).Cells("明細連動").Value = 報價明細表3_dgv.Rows(e.RowIndex).Cells("流水號").Value.ToString() : 報價總表_dgv_自動計算()
  1532. End If
  1533. End Sub
  1534. Private Sub 試算表_dgv_CellContentCl(sender As Object, e As DataGridViewCellEventArgs) Handles 試算表_dgv.CellEnter
  1535. 試算表計算()
  1536. End Sub
  1537. Private Sub 物料規格_dgv_CellContentCl(sender As Object, e As DataGridViewCellEventArgs) Handles 物料規格_dgv.CellEnter
  1538. For i As Integer = 0 To 物料規格_dgv.Rows.Count - 1
  1539. If Not IsNumeric(物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value) Then : MGB(系統語言字典("G000-180-" & 語言), 1)
  1540. 物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value = "0" : 物料規格_dgv.Rows(i).Cells("Pilih").Value = False
  1541. ElseIf Val(物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value) > 0 Then : 物料規格_dgv.Rows(i).Cells("Pilih").Value = True
  1542. ElseIf Val(物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value) <= 0 Then : 物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value = "0"
  1543. 物料規格_dgv.Rows(i).Cells("Pilih").Value = False
  1544. End If
  1545. Next i
  1546. End Sub
  1547. Private Sub 試算表計算()
  1548. For i As Integer = 0 To 試算表_dgv.Rows.Count - 1
  1549. If 試算表_dgv.Rows(i).Cells("係數").Value = False Then
  1550. 試算表_dgv.Rows(i).Cells("Total").Value = 試算表_dgv.Rows(i).Cells(3).Value + 試算表_dgv.Rows(i).Cells(4).Value +
  1551. 試算表_dgv.Rows(i).Cells(5).Value + 試算表_dgv.Rows(i).Cells(6).Value + 試算表_dgv.Rows(i).Cells(7).Value + 試算表_dgv.Rows(i).Cells(8).Value +
  1552. 試算表_dgv.Rows(i).Cells(9).Value + 試算表_dgv.Rows(i).Cells(10).Value + 試算表_dgv.Rows(i).Cells(11).Value + 試算表_dgv.Rows(i).Cells(12).Value +
  1553. 試算表_dgv.Rows(i).Cells(13).Value + 試算表_dgv.Rows(i).Cells(14).Value + 試算表_dgv.Rows(i).Cells(15).Value + 試算表_dgv.Rows(i).Cells(16).Value +
  1554. 試算表_dgv.Rows(i).Cells(17).Value + 試算表_dgv.Rows(i).Cells(18).Value + 試算表_dgv.Rows(i).Cells(19).Value + 試算表_dgv.Rows(i).Cells(20).Value +
  1555. 試算表_dgv.Rows(i).Cells(21).Value + 試算表_dgv.Rows(i).Cells(22).Value + 試算表_dgv.Rows(i).Cells(23).Value + 試算表_dgv.Rows(i).Cells(24).Value +
  1556. 試算表_dgv.Rows(i).Cells(25).Value + 試算表_dgv.Rows(i).Cells(26).Value + 試算表_dgv.Rows(i).Cells(27).Value + 試算表_dgv.Rows(i).Cells(28).Value +
  1557. 試算表_dgv.Rows(i).Cells(29).Value + 試算表_dgv.Rows(i).Cells(30).Value + 試算表_dgv.Rows(i).Cells(31).Value + 試算表_dgv.Rows(i).Cells(32).Value +
  1558. 試算表_dgv.Rows(i).Cells(33).Value + 試算表_dgv.Rows(i).Cells(34).Value + 試算表_dgv.Rows(i).Cells(35).Value + 試算表_dgv.Rows(i).Cells(36).Value +
  1559. 試算表_dgv.Rows(i).Cells(37).Value + 試算表_dgv.Rows(i).Cells(38).Value + 試算表_dgv.Rows(i).Cells(39).Value + 試算表_dgv.Rows(i).Cells(40).Value +
  1560. 試算表_dgv.Rows(i).Cells(41).Value + 試算表_dgv.Rows(i).Cells(42).Value
  1561. Else
  1562. 試算表_dgv.Rows(i).Cells("Total").Value = (試算表_dgv.Rows(i).Cells(3).Value + 試算表_dgv.Rows(i).Cells(4).Value +
  1563. 試算表_dgv.Rows(i).Cells(5).Value + 試算表_dgv.Rows(i).Cells(6).Value + 試算表_dgv.Rows(i).Cells(7).Value + 試算表_dgv.Rows(i).Cells(8).Value +
  1564. 試算表_dgv.Rows(i).Cells(9).Value + 試算表_dgv.Rows(i).Cells(10).Value + 試算表_dgv.Rows(i).Cells(11).Value + 試算表_dgv.Rows(i).Cells(12).Value +
  1565. 試算表_dgv.Rows(i).Cells(13).Value + 試算表_dgv.Rows(i).Cells(14).Value + 試算表_dgv.Rows(i).Cells(15).Value + 試算表_dgv.Rows(i).Cells(16).Value +
  1566. 試算表_dgv.Rows(i).Cells(17).Value + 試算表_dgv.Rows(i).Cells(18).Value + 試算表_dgv.Rows(i).Cells(19).Value + 試算表_dgv.Rows(i).Cells(20).Value +
  1567. 試算表_dgv.Rows(i).Cells(21).Value + 試算表_dgv.Rows(i).Cells(22).Value + 試算表_dgv.Rows(i).Cells(23).Value + 試算表_dgv.Rows(i).Cells(24).Value +
  1568. 試算表_dgv.Rows(i).Cells(25).Value + 試算表_dgv.Rows(i).Cells(26).Value + 試算表_dgv.Rows(i).Cells(27).Value + 試算表_dgv.Rows(i).Cells(28).Value +
  1569. 試算表_dgv.Rows(i).Cells(29).Value + 試算表_dgv.Rows(i).Cells(30).Value + 試算表_dgv.Rows(i).Cells(31).Value + 試算表_dgv.Rows(i).Cells(32).Value +
  1570. 試算表_dgv.Rows(i).Cells(33).Value + 試算表_dgv.Rows(i).Cells(34).Value + 試算表_dgv.Rows(i).Cells(35).Value + 試算表_dgv.Rows(i).Cells(36).Value +
  1571. 試算表_dgv.Rows(i).Cells(37).Value + 試算表_dgv.Rows(i).Cells(38).Value + 試算表_dgv.Rows(i).Cells(39).Value + 試算表_dgv.Rows(i).Cells(40).Value +
  1572. 試算表_dgv.Rows(i).Cells(41).Value + 試算表_dgv.Rows(i).Cells(42).Value) / 100 * (100 + 係數_nud.Value)
  1573. End If
  1574. Next i
  1575. End Sub
  1576. Private Sub 報價總表_dgv_自動計算()
  1577. '-----------項目自動對準計算條件---------------------------------------------------------------------------------------------------------------------------
  1578. For i As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  1579. If Strings.Left(報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString, 2) = "管理" Then : 報價總表_dgv.Rows(i).Cells("ITEM").Value = "^" : End If
  1580. If Strings.Left(報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString, 2) = "稅金" Then : 報價總表_dgv.Rows(i).Cells("ITEM").Value = "*" : End If
  1581. If Strings.Left(報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString, 2) = "小計" Then : 報價總表_dgv.Rows(i).Cells("ITEM").Value = "$" : End If
  1582. If Strings.Left(報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString, 2) = "總計" Then : 報價總表_dgv.Rows(i).Cells("ITEM").Value = "@" : End If
  1583. If Strings.Left(報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString, 2) = "折讓" Then : 報價總表_dgv.Rows(i).Cells("ITEM").Value = "#" : End If
  1584. If 報價總表_dgv.Rows(i).Cells("明細連動").Value.ToString <> "" Then
  1585. For ii As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  1586. If 報價總表_dgv.Rows(i).Cells("明細連動").Value.ToString = 報價明細表_dgv.Rows(ii).Cells("流水號").Value.ToString Then
  1587. 報價總表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value = 報價明細表_dgv.Rows(ii).Cells("AMOUNT" & 幣別).Value.ToString : Exit For
  1588. End If
  1589. Next
  1590. End If
  1591. Next
  1592. Dim 合計, 合計無管, 稅金 As Double : 合計 = 0 : 稅金 = 0
  1593. For i As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  1594. '---------計算項目-------------------------------------------------------------------------------------------------------------------------------------
  1595. If 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString = "*" Or 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString = "" Or
  1596. 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString = "@" Or 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString = "^" Or
  1597. 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString = "$" Then : Else
  1598. If IsDBNull(報價總表_dgv.Rows(i).Cells("QTY").Value) Then : 報價總表_dgv.Rows(i).Cells("QTY").Value = 0 : End If
  1599. If IsDBNull(報價總表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value) Then : 報價總表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value = 0 : End If
  1600. 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(報價總表_dgv.Rows(i).Cells("QTY").Value) * CLng(報價總表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value)
  1601. End If
  1602. '---------管理費加總-------------------------------------------------------------------------------------------------------------------------------------
  1603. If 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString <> "*" And 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString <> "@" And
  1604. 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString <> "$" And 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString <> "^" And
  1605. 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString <> "折讓 Discount" Then
  1606. 合計無管 += 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value
  1607. End If
  1608. If 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "管理費 0%" Then : 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(合計無管 * 0)
  1609. ElseIf 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "管理費 1%" Then : 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(合計無管 * 0.01)
  1610. ElseIf 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "管理費 2%" Then : 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(合計無管 * 0.02)
  1611. ElseIf 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "管理費 3%" Then : 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(合計無管 * 0.03)
  1612. ElseIf 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "管理費 4%" Then : 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(合計無管 * 0.04)
  1613. ElseIf 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "管理費 5%" Then : 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(合計無管 * 0.05)
  1614. ElseIf 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "管理費 6%" Then : 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(合計無管 * 0.06)
  1615. ElseIf 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "管理費 7%" Then : 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(合計無管 * 0.07)
  1616. ElseIf 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "管理費 8%" Then : 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(合計無管 * 0.08)
  1617. ElseIf 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "管理費 9%" Then : 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(合計無管 * 0.09)
  1618. ElseIf 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "管理費 10%" Then : 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(合計無管 * 0.1)
  1619. End If
  1620. '---------計算彙總-------------------------------------------------------------------------------------------------------------------------------------
  1621. If 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString <> "*" And 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString <> "@" And
  1622. 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString <> "$" Then
  1623. 合計 += 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value
  1624. End If
  1625. If 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "小計(未稅) Subtotal(Excluding Tax)" Then : 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = 合計 : End If
  1626. If 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "稅金 10% Tax" Then
  1627. 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(合計 * 0.1) : 稅金 = 合計 * 0.1 : 稅額顯示_lb.Text = "PPN 10%稅額 = Rp. "
  1628. ElseIf 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "稅金 11% Tax" Then
  1629. 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(合計 * 0.11) : 稅金 = 合計 * 0.11 : 稅額顯示_lb.Text = "PPN 11%稅額 = Rp. "
  1630. End If
  1631. If Strings.Left(報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString, 2) = "總計" Then
  1632. 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(合計 + Fix(稅金))
  1633. If Strings.Right(報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value.ToString, 3) = "001" Then
  1634. 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value) - 1
  1635. ElseIf Strings.Right(報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value.ToString, 3) = "999" Then
  1636. 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = CLng(報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value) + 1
  1637. End If
  1638. NUD3.Value = CLng(報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value)
  1639. End If
  1640. '------------數字為0隱藏-----------------------------------------------------------------------------------------------
  1641. If 深色風格 = False Then
  1642. If IsDBNull(報價總表_dgv.Rows(i).Cells(4).Value) Then : 報價總表_dgv.Rows(i).Cells(4).Style.ForeColor = Color.White : Else
  1643. If 報價總表_dgv.Rows(i).Cells(4).Value = 0 Then : 報價總表_dgv.Rows(i).Cells(4).Style.ForeColor = Color.White
  1644. Else : 報價總表_dgv.Rows(i).Cells(4).Style.ForeColor = Color.Black : End If : End If
  1645. If IsDBNull(報價總表_dgv.Rows(i).Cells(5).Value) Then : 報價總表_dgv.Rows(i).Cells(5).Style.ForeColor = Color.White : Else
  1646. If 報價總表_dgv.Rows(i).Cells(5).Value = 0 Then : 報價總表_dgv.Rows(i).Cells(5).Style.ForeColor = Color.White
  1647. Else : 報價總表_dgv.Rows(i).Cells(5).Style.ForeColor = Color.Black : End If : End If
  1648. If IsDBNull(報價總表_dgv.Rows(i).Cells(6).Value) Then : 報價總表_dgv.Rows(i).Cells(6).Style.ForeColor = Color.White : Else
  1649. If 報價總表_dgv.Rows(i).Cells(6).Value = 0 Then : 報價總表_dgv.Rows(i).Cells(6).Style.ForeColor = Color.White
  1650. Else : 報價總表_dgv.Rows(i).Cells(6).Style.ForeColor = Color.Black : End If : End If
  1651. Else
  1652. If IsDBNull(報價總表_dgv.Rows(i).Cells(4).Value) Then : 報價總表_dgv.Rows(i).Cells(4).Style.ForeColor = Color.Black : Else
  1653. If 報價總表_dgv.Rows(i).Cells(4).Value = 0 Then : 報價總表_dgv.Rows(i).Cells(4).Style.ForeColor = Color.Black
  1654. Else : 報價總表_dgv.Rows(i).Cells(4).Style.ForeColor = Color.White : End If : End If
  1655. If IsDBNull(報價總表_dgv.Rows(i).Cells(5).Value) Then : 報價總表_dgv.Rows(i).Cells(5).Style.ForeColor = Color.Black : Else
  1656. If 報價總表_dgv.Rows(i).Cells(5).Value = 0 Then : 報價總表_dgv.Rows(i).Cells(5).Style.ForeColor = Color.Black
  1657. Else : 報價總表_dgv.Rows(i).Cells(5).Style.ForeColor = Color.White : End If : End If
  1658. If IsDBNull(報價總表_dgv.Rows(i).Cells(6).Value) Then : 報價總表_dgv.Rows(i).Cells(6).Style.ForeColor = Color.Black : Else
  1659. If 報價總表_dgv.Rows(i).Cells(6).Value = 0 Then : 報價總表_dgv.Rows(i).Cells(6).Style.ForeColor = Color.Black
  1660. Else : 報價總表_dgv.Rows(i).Cells(6).Style.ForeColor = Color.White : End If : End If
  1661. End If
  1662. Next
  1663. '------------彙總計算-----------------------------------------------------------------------------------------------
  1664. Dim 折讓 As Long = 0 : 未折價前_tb.Text = "0" : 報價小計_tb.Text = "0"
  1665. For i As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  1666. If 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString = "*" Or 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString = "@" Or
  1667. 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString = "$" Or 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "折讓 Discount" Then : Else
  1668. 未折價前_tb.Text = CLng(未折價前_tb.Text) + CLng(報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value)
  1669. End If
  1670. If 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString = "*" Or 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString = "@" Or
  1671. 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString = "$" Then : Else
  1672. 報價小計_tb.Text = CLng(報價小計_tb.Text) + CLng(報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value)
  1673. End If
  1674. If 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "折讓 Discount" Then
  1675. 折讓 += CLng(報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value)
  1676. End If
  1677. Next
  1678. 預估利潤_tb.Text = Strings.Format(CLng(總報價_tb.Text) - (CLng(總成本_tb.Text) - 折讓), "#,##0")
  1679. If (CLng(總報價_tb.Text) + 折讓) = 0 Then : 利潤比4_tb.Text = "0 %" : Else
  1680. 利潤比4_tb.Text = Strings.Format((1 - ((CLng(總成本_tb.Text)) / (CLng(總報價_tb.Text) + 折讓))) * 100, "#,##0") & " %"
  1681. End If
  1682. 未折價前_tb.Text = Strings.Format(CLng(未折價前_tb.Text), "#,##0") : 報價小計_tb.Text = Strings.Format(CLng(報價小計_tb.Text), "#,##0")
  1683. End Sub
  1684. Private Sub 報價明細表_dgv_物料顯示()
  1685. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  1686. If 報價明細表_dgv.Rows(i).Cells(表頭(9)).Value.ToString = "" Then
  1687. 報價明細表_dgv.Rows(i).Cells("D1").Value = False : 報價明細表_dgv.Rows(i).Cells("D2").Value = False
  1688. 報價明細表_dgv.Rows(i).Cells("D3").Value = False : 報價明細表_dgv.Rows(i).Cells("D4").Value = False
  1689. 報價明細表_dgv.Rows(i).Cells("D5").Value = False : 報價明細表_dgv.Rows(i).Cells("D6").Value = False
  1690. 報價明細表_dgv.Rows(i).Cells("D7").Value = False : 報價明細表_dgv.Rows(i).Cells("D8").Value = False
  1691. End If
  1692. If 報價明細表_dgv.Rows(i).Cells(表頭(9)).Value.ToString <> "" Then
  1693. If 報價明細表_dgv.Rows(i).Cells("預設").Value = True Then
  1694. 報價明細表_dgv.Rows(i).Cells("D1").Value = 報價明細表_dgv.Rows(i).Cells("S1").Value : 報價明細表_dgv.Rows(i).Cells("D2").Value = 報價明細表_dgv.Rows(i).Cells("S2").Value
  1695. 報價明細表_dgv.Rows(i).Cells("D3").Value = 報價明細表_dgv.Rows(i).Cells("S3").Value : 報價明細表_dgv.Rows(i).Cells("D4").Value = 報價明細表_dgv.Rows(i).Cells("S4").Value
  1696. 報價明細表_dgv.Rows(i).Cells("D5").Value = 報價明細表_dgv.Rows(i).Cells("S5").Value : 報價明細表_dgv.Rows(i).Cells("D6").Value = 報價明細表_dgv.Rows(i).Cells("S6").Value
  1697. 報價明細表_dgv.Rows(i).Cells("D7").Value = 報價明細表_dgv.Rows(i).Cells("S7").Value : 報價明細表_dgv.Rows(i).Cells("D8").Value = 報價明細表_dgv.Rows(i).Cells("S8").Value
  1698. End If
  1699. Dim ZA1, ZA2, ZA3, ZA4, ZA5, ZA6, ZA7, ZA8 As String : 物料規格 = ""
  1700. If 詳細資料2_ch.Checked = True Then
  1701. If 報價明細表_dgv.Rows(i).Cells("A1").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D1").Value = True Then
  1702. ZA1 = 報價明細表_dgv.Rows(i).Cells("AA1").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A1").Value.ToString : 物料規格 = ZA1 : End If : End If
  1703. If 報價明細表_dgv.Rows(i).Cells("A2").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D2").Value = True Then
  1704. ZA2 = 報價明細表_dgv.Rows(i).Cells("AA2").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A2").Value : If 物料規格 = "" Then
  1705. 物料規格 = ZA2 : Else : 物料規格 = 物料規格 + "、" + ZA2 : End If : End If : End If
  1706. If 報價明細表_dgv.Rows(i).Cells("A3").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D3").Value = True Then
  1707. ZA3 = 報價明細表_dgv.Rows(i).Cells("AA3").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A3").Value : If 物料規格 = "" Then
  1708. 物料規格 = ZA3 : Else : 物料規格 = 物料規格 + "、" + ZA3 : End If : End If : End If
  1709. If 報價明細表_dgv.Rows(i).Cells("A4").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D4").Value = True Then
  1710. ZA4 = 報價明細表_dgv.Rows(i).Cells("AA4").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A4").Value : If 物料規格 = "" Then
  1711. 物料規格 = ZA4 : Else : 物料規格 = 物料規格 + "、" + ZA4 : End If : End If : End If
  1712. If 報價明細表_dgv.Rows(i).Cells("A5").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D5").Value = True Then
  1713. ZA5 = 報價明細表_dgv.Rows(i).Cells("AA5").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A5").Value : If 物料規格 = "" Then
  1714. 物料規格 = ZA5 : Else : 物料規格 = 物料規格 + "、" + ZA5 : End If : End If : End If
  1715. If 報價明細表_dgv.Rows(i).Cells("A6").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D6").Value = True Then
  1716. ZA6 = 報價明細表_dgv.Rows(i).Cells("AA6").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A6").Value : If 物料規格 = "" Then
  1717. 物料規格 = ZA6 : Else : 物料規格 = 物料規格 + "、" + ZA6 : End If : End If : End If
  1718. If 報價明細表_dgv.Rows(i).Cells("A7").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D7").Value = True Then
  1719. ZA7 = 報價明細表_dgv.Rows(i).Cells("AA7").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A7").Value : If 物料規格 = "" Then
  1720. 物料規格 = ZA7 : Else : 物料規格 = 物料規格 + "、" + ZA7 : End If : End If : End If
  1721. If 報價明細表_dgv.Rows(i).Cells("A8").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D8").Value = True Then
  1722. ZA8 = 報價明細表_dgv.Rows(i).Cells("AA8").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A8").Value : If 物料規格 = "" Then
  1723. 物料規格 = ZA8 : Else : 物料規格 = 物料規格 + "、" + ZA8 : End If : End If : End If
  1724. Else
  1725. If 報價明細表_dgv.Rows(i).Cells("A1").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D1").Value = True Then
  1726. ZA1 = 報價明細表_dgv.Rows(i).Cells("A1").Value.ToString : 物料規格 = ZA1 : End If : End If
  1727. If 報價明細表_dgv.Rows(i).Cells("A2").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D2").Value = True Then
  1728. ZA2 = 報價明細表_dgv.Rows(i).Cells("A2").Value : If 物料規格 = "" Then : 物料規格 = ZA2 : Else : 物料規格 = 物料規格 + "、" + ZA2 : End If : End If : End If
  1729. If 報價明細表_dgv.Rows(i).Cells("A3").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D3").Value = True Then
  1730. ZA3 = 報價明細表_dgv.Rows(i).Cells("A3").Value : If 物料規格 = "" Then : 物料規格 = ZA3 : Else : 物料規格 = 物料規格 + "、" + ZA3 : End If : End If : End If
  1731. If 報價明細表_dgv.Rows(i).Cells("A4").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D4").Value = True Then
  1732. ZA4 = 報價明細表_dgv.Rows(i).Cells("A4").Value : If 物料規格 = "" Then : 物料規格 = ZA4 : Else : 物料規格 = 物料規格 + "、" + ZA4 : End If : End If : End If
  1733. If 報價明細表_dgv.Rows(i).Cells("A5").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D5").Value = True Then
  1734. ZA5 = 報價明細表_dgv.Rows(i).Cells("A5").Value : If 物料規格 = "" Then : 物料規格 = ZA5 : Else : 物料規格 = 物料規格 + "、" + ZA5 : End If : End If : End If
  1735. If 報價明細表_dgv.Rows(i).Cells("A6").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D6").Value = True Then
  1736. ZA6 = 報價明細表_dgv.Rows(i).Cells("A6").Value : If 物料規格 = "" Then : 物料規格 = ZA6 : Else : 物料規格 = 物料規格 + "、" + ZA6 : End If : End If : End If
  1737. If 報價明細表_dgv.Rows(i).Cells("A7").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D7").Value = True Then
  1738. ZA7 = 報價明細表_dgv.Rows(i).Cells("A7").Value : If 物料規格 = "" Then : 物料規格 = ZA7 : Else : 物料規格 = 物料規格 + "、" + ZA7 : End If : End If : End If
  1739. If 報價明細表_dgv.Rows(i).Cells("A8").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D8").Value = True Then
  1740. ZA8 = 報價明細表_dgv.Rows(i).Cells("A8").Value : If 物料規格 = "" Then : 物料規格 = ZA8 : Else : 物料規格 = 物料規格 + "、" + ZA8 : End If : End If : End If
  1741. End If
  1742. If 報價明細表_dgv.Rows(i).Cells(表頭(9)).Value.ToString <> "" Then
  1743. 報價明細表_dgv.Rows(i).Cells("DESCRIPTION").Value = 報價明細表_dgv.Rows(i).Cells("品名").Value.ToString & " " & 物料規格
  1744. End If
  1745. End If : 報價明細表_dgv.Rows(i).Cells("預設").Value = False
  1746. Next
  1747. End Sub
  1748. Private Sub 報價明細表_dgv_自動計算()
  1749. Dim 合計, 利潤, 工資係數, 工資成本, 工資利潤, 材料係數, 材基係數, 材料成本, 材料利潤 As Double : 合計 = 0 : 工資係數 = 0
  1750. For i As Integer = 0 To 報價係數_dgv.Rows.Count - 1
  1751. If 報價係數_dgv.Rows(i).Cells("項目").Value.ToString = "工資利潤" Then : 工資係數 = 報價係數_dgv.Rows(i).Cells("係數").Value.ToString : End If
  1752. If 報價係數_dgv.Rows(i).Cells("項目").Value.ToString = "材料係數" Then : 材基係數 = 報價係數_dgv.Rows(i).Cells("係數").Value.ToString : Exit For : End If
  1753. Next
  1754. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  1755. 報價明細表_dgv.Rows(i).Cells("QTY").Value = 報價明細表_dgv.Rows(i).Cells("實際數量").Value.ToString
  1756. '------------------------------------工資計算-----------------------------------------------------------------------------------------------------------
  1757. For ii As Integer = 0 To 報價係數_dgv.Rows.Count - 1 '----如果工資係數不是%時,自動填入係數上的金額
  1758. If 報價係數_dgv.Rows(ii).Cells("項目").Value.ToString = 報價明細表_dgv.Rows(i).Cells("工資單價").Value.ToString And
  1759. 報價係數_dgv.Rows(ii).Cells("單位").Value.ToString = "RP" Then
  1760. 報價明細表_dgv.Rows(i).Cells("工資成本單價").Value = 報價係數_dgv.Rows(ii).Cells("係數").Value.ToString : Exit For
  1761. End If
  1762. Next
  1763. 報價明細表_dgv.Rows(i).Cells("工資成本後價").Value = 報價明細表_dgv.Rows(i).Cells("實際數量").Value * 報價明細表_dgv.Rows(i).Cells("工資成本單價").Value
  1764. If 報價明細表_dgv.Rows(i).Cells("不計").Value = False Then
  1765. If 報價明細表_dgv.Rows(i).Cells("工資係數").Value.ToString = "" Then
  1766. 報價明細表_dgv.Rows(i).Cells("工資報價單價").Value = 報價明細表_dgv.Rows(i).Cells("工資成本單價").Value * 工資係數 / 100
  1767. Else
  1768. For ii As Integer = 0 To 報價係數_dgv.Rows.Count - 1
  1769. If 報價明細表_dgv.Rows(i).Cells("工資係數").Value.ToString = 報價係數_dgv.Rows(ii).Cells("項目").Value.ToString And
  1770. 報價係數_dgv.Rows(ii).Cells("單位").Value.ToString = "%" Then
  1771. 報價明細表_dgv.Rows(i).Cells("工資報價單價").Value = 報價明細表_dgv.Rows(i).Cells("工資成本單價").Value * 報價係數_dgv.Rows(ii).Cells("係數").Value / 100
  1772. ElseIf 報價明細表_dgv.Rows(i).Cells("工資係數").Value.ToString = 報價係數_dgv.Rows(ii).Cells("項目").Value.ToString And
  1773. 報價係數_dgv.Rows(ii).Cells("單位").Value.ToString = "RP" Then
  1774. 報價明細表_dgv.Rows(i).Cells("工資報價單價").Value = 報價明細表_dgv.Rows(i).Cells("工資成本單價").Value * 工資係數 / 100
  1775. End If
  1776. Next
  1777. End If
  1778. Else : 報價明細表_dgv.Rows(i).Cells("工資報價單價").Value = 0 : End If
  1779. 報價明細表_dgv.Rows(i).Cells("工資報價後價").Value = 報價明細表_dgv.Rows(i).Cells("工資報價單價").Value * 報價明細表_dgv.Rows(i).Cells("QTY").Value
  1780. '------------------------------------材料計算-----------------------------------------------------------------------------------------------------------
  1781. For ii As Integer = 0 To 報價係數_dgv.Rows.Count - 1 '----如果材料係數不是%時,自動填入係數上的金額
  1782. If 報價係數_dgv.Rows(ii).Cells("項目").Value.ToString = 報價明細表_dgv.Rows(i).Cells("材料係數").Value.ToString And
  1783. 報價係數_dgv.Rows(ii).Cells("單位").Value.ToString = "RP" Then
  1784. 報價明細表_dgv.Rows(i).Cells("材料成本單價").Value = 報價係數_dgv.Rows(ii).Cells("係數").Value.ToString : Exit For
  1785. End If
  1786. Next
  1787. 報價明細表_dgv.Rows(i).Cells("材料成本後價").Value = 報價明細表_dgv.Rows(i).Cells("實際數量").Value * 報價明細表_dgv.Rows(i).Cells("材料成本單價").Value
  1788. If 報價明細表_dgv.Rows(i).Cells("材料係數").Value.ToString = "" Then : 材料係數 = 100 : Else
  1789. For ii As Integer = 0 To 報價係數_dgv.Rows.Count - 1
  1790. If 報價係數_dgv.Rows(ii).Cells("項目").Value.ToString = 報價明細表_dgv.Rows(i).Cells("材料係數").Value.ToString And
  1791. 報價係數_dgv.Rows(ii).Cells("單位").Value.ToString = "%" Then
  1792. 材料係數 = 報價係數_dgv.Rows(ii).Cells("係數").Value.ToString : Exit For
  1793. ElseIf 報價係數_dgv.Rows(ii).Cells("項目").Value.ToString = 報價明細表_dgv.Rows(i).Cells("材料係數").Value.ToString And
  1794. 報價係數_dgv.Rows(ii).Cells("單位").Value.ToString = "RP" Then
  1795. 材料係數 = 材基係數
  1796. End If
  1797. Next
  1798. End If
  1799. If 報價明細表_dgv.Rows(i).Cells("不計").Value = False Then
  1800. 報價明細表_dgv.Rows(i).Cells("材料報價單價").Value = 報價明細表_dgv.Rows(i).Cells("材料成本單價").Value * 材料係數 / 100
  1801. Else : 報價明細表_dgv.Rows(i).Cells("材料報價單價").Value = 0 : End If
  1802. 報價明細表_dgv.Rows(i).Cells("材料報價後價").Value = 報價明細表_dgv.Rows(i).Cells("材料報價單價").Value * 報價明細表_dgv.Rows(i).Cells("QTY").Value
  1803. 報價明細表_dgv.Rows(i).Cells("利潤").Value = 報價明細表_dgv.Rows(i).Cells("材料報價後價").Value + 報價明細表_dgv.Rows(i).Cells("工資報價後價").Value -
  1804. 報價明細表_dgv.Rows(i).Cells("材料成本後價").Value - 報價明細表_dgv.Rows(i).Cells("工資成本後價").Value
  1805. '------------------------------------報價單呈現-----------------------------------------------------------------------------------------------------------
  1806. If 報價明細表_dgv.Rows(i).Cells("不計").Value = False Then
  1807. 報價明細表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value = 報價明細表_dgv.Rows(i).Cells("工資報價單價").Value + 報價明細表_dgv.Rows(i).Cells("材料報價單價").Value
  1808. 報價明細表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = 報價明細表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value * 報價明細表_dgv.Rows(i).Cells("QTY").Value
  1809. Else
  1810. 報價明細表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value = 0 : 報價明細表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = 0
  1811. End If
  1812. '------------------------------------報價合計計算-----------------------------------------------------------------------------------------------------------
  1813. If 報價明細表_dgv.Rows(i).Cells("ITEM").Value.ToString <> "*" Then
  1814. 合計 += 報價明細表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value : 利潤 += 報價明細表_dgv.Rows(i).Cells("利潤").Value
  1815. 工資成本 += 報價明細表_dgv.Rows(i).Cells("工資成本後價").Value : 工資利潤 += 報價明細表_dgv.Rows(i).Cells("工資報價後價").Value
  1816. 材料成本 += 報價明細表_dgv.Rows(i).Cells("材料成本後價").Value : 材料利潤 += 報價明細表_dgv.Rows(i).Cells("材料報價後價").Value
  1817. End If
  1818. If 報價明細表_dgv.Rows(i).Cells("ITEM").Value.ToString = "*" Then
  1819. 報價明細表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value = 合計 : 合計 = 0 : 報價明細表_dgv.Rows(i).Cells("利潤").Value = 利潤 : 利潤 = 0
  1820. 報價明細表_dgv.Rows(i).Cells("工資成本後價").Value = 工資成本 : 工資成本 = 0 : 報價明細表_dgv.Rows(i).Cells("工資報價後價").Value = 工資利潤 : 工資利潤 = 0
  1821. 報價明細表_dgv.Rows(i).Cells("材料成本後價").Value = 材料成本 : 材料成本 = 0 : 報價明細表_dgv.Rows(i).Cells("材料報價後價").Value = 材料利潤 : 材料利潤 = 0
  1822. End If
  1823. '------------數字為0隱藏-----------------------------------------------------------------------------------------------
  1824. If 深色風格 = False Then
  1825. If IsDBNull(報價明細表_dgv.Rows(i).Cells(4).Value) Then : 報價明細表_dgv.Rows(i).Cells(4).Style.ForeColor = Color.White : Else
  1826. If 報價明細表_dgv.Rows(i).Cells(4).Value.ToString = "" Then : Else
  1827. If 報價明細表_dgv.Rows(i).Cells(4).Value = 0 Then : 報價明細表_dgv.Rows(i).Cells(4).Style.ForeColor = Color.White
  1828. Else : 報價明細表_dgv.Rows(i).Cells(4).Style.ForeColor = Color.Black : End If : End If
  1829. End If
  1830. If IsDBNull(報價明細表_dgv.Rows(i).Cells(5).Value) Then : 報價明細表_dgv.Rows(i).Cells(5).Style.ForeColor = Color.White : Else
  1831. If 報價明細表_dgv.Rows(i).Cells(5).Value.ToString = "" Then : Else
  1832. If 報價明細表_dgv.Rows(i).Cells(5).Value = 0 Then : 報價明細表_dgv.Rows(i).Cells(5).Style.ForeColor = Color.White
  1833. Else : 報價明細表_dgv.Rows(i).Cells(5).Style.ForeColor = Color.Black : End If : End If
  1834. End If
  1835. If IsDBNull(報價明細表_dgv.Rows(i).Cells(6).Value) Then : 報價明細表_dgv.Rows(i).Cells(6).Style.ForeColor = Color.White : Else
  1836. If 報價明細表_dgv.Rows(i).Cells(6).Value.ToString = "" Then : Else
  1837. If 報價明細表_dgv.Rows(i).Cells(6).Value = 0 Then : 報價明細表_dgv.Rows(i).Cells(6).Style.ForeColor = Color.White
  1838. Else : 報價明細表_dgv.Rows(i).Cells(6).Style.ForeColor = Color.Black : End If
  1839. End If
  1840. End If
  1841. Else
  1842. If IsDBNull(報價明細表_dgv.Rows(i).Cells(4).Value) Then : 報價明細表_dgv.Rows(i).Cells(4).Style.ForeColor = Color.Black : Else
  1843. If 報價明細表_dgv.Rows(i).Cells(4).Value.ToString = "" Then : Else
  1844. If 報價明細表_dgv.Rows(i).Cells(4).Value = 0 Then : 報價明細表_dgv.Rows(i).Cells(4).Style.ForeColor = Color.Black
  1845. Else : 報價明細表_dgv.Rows(i).Cells(4).Style.ForeColor = Color.White : End If : End If
  1846. End If
  1847. If IsDBNull(報價明細表_dgv.Rows(i).Cells(5).Value) Then : 報價明細表_dgv.Rows(i).Cells(5).Style.ForeColor = Color.Black : Else
  1848. If 報價明細表_dgv.Rows(i).Cells(5).Value.ToString = "" Then : Else
  1849. If 報價明細表_dgv.Rows(i).Cells(5).Value = 0 Then : 報價明細表_dgv.Rows(i).Cells(5).Style.ForeColor = Color.Black
  1850. Else : 報價明細表_dgv.Rows(i).Cells(5).Style.ForeColor = Color.White : End If : End If
  1851. End If
  1852. If IsDBNull(報價明細表_dgv.Rows(i).Cells(6).Value) Then : 報價明細表_dgv.Rows(i).Cells(6).Style.ForeColor = Color.Black : Else
  1853. If 報價明細表_dgv.Rows(i).Cells(6).Value.ToString = "" Then : Else
  1854. If 報價明細表_dgv.Rows(i).Cells(6).Value = 0 Then : 報價明細表_dgv.Rows(i).Cells(6).Style.ForeColor = Color.Black
  1855. Else : 報價明細表_dgv.Rows(i).Cells(6).Style.ForeColor = Color.White : End If
  1856. End If
  1857. End If
  1858. End If
  1859. Next
  1860. 工資成本 = 0 : 材料成本 = 0 : 工資利潤 = 0 : 材料利潤 = 0
  1861. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  1862. If 報價明細表_dgv.Rows(i).Cells("ITEM").Value.ToString = "*" Then
  1863. 工資成本 += CLng(報價明細表_dgv.Rows(i).Cells("工資成本後價").Value)
  1864. 材料成本 += CLng(報價明細表_dgv.Rows(i).Cells("材料成本後價").Value)
  1865. 工資利潤 += CLng(報價明細表_dgv.Rows(i).Cells("工資報價後價").Value)
  1866. 材料利潤 += CLng(報價明細表_dgv.Rows(i).Cells("材料報價後價").Value)
  1867. End If
  1868. Next
  1869. If PA50 = "" Then : Else : 工資成本 -= (工資成本 / 100 * CInt(PA50)) : 材料成本 -= (材料成本 / 100 * CInt(PA50)) : End If
  1870. 預估工資總成本_tb.Text = Strings.Format(工資成本, "#,##0") : 預估材料總成本_tb.Text = Strings.Format(材料成本, "#,##0")
  1871. 預估工資總報價_tb.Text = Strings.Format(工資利潤, "#,##0") : 預估材料總報價_tb.Text = Strings.Format(材料利潤, "#,##0")
  1872. 總成本_tb.Text = Strings.Format(工資成本 + 材料成本, "#,##0") : 總報價_tb.Text = Strings.Format(工資利潤 + 材料利潤, "#,##0")
  1873. If 工資利潤 = 0 Then : 利潤比1_tb.Text = "0 %" : Else
  1874. 利潤比1_tb.Text = Strings.Format((1 - ((工資成本) / (工資利潤))) * 100, "#,##0") & " %"
  1875. End If
  1876. If 材料利潤 = 0 Then : 利潤比2_tb.Text = "0 %" : Else
  1877. 利潤比2_tb.Text = Strings.Format((1 - ((材料成本) / (材料利潤))) * 100, "#,##0") & " %"
  1878. End If
  1879. If (材料利潤 + 工資利潤) = 0 Then : 利潤比3_tb.Text = "0 %" : Else
  1880. 利潤比3_tb.Text = Strings.Format((1 - ((材料成本 + 工資成本) / (材料利潤 + 工資利潤))) * 100, "#,##0") & " %"
  1881. End If
  1882. Dim 折讓 As Long = 0
  1883. For i As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  1884. If 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "折讓 Discount" Then
  1885. 折讓 += CLng(報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value)
  1886. End If
  1887. Next
  1888. 預估利潤_tb.Text = Strings.Format(CLng(總報價_tb.Text) - (CLng(總成本_tb.Text) - 折讓), "#,##0")
  1889. If (CLng(總報價_tb.Text) + 折讓) = 0 Then : 利潤比4_tb.Text = "0 %" : Else
  1890. 利潤比4_tb.Text = Strings.Format((1 - ((CLng(總成本_tb.Text)) / (CLng(總報價_tb.Text) + 折讓))) * 100, "#,##0") & " %"
  1891. End If
  1892. End Sub
  1893. '-----------------建立合約資料功能-------------------------------------------------------------------------------------------------------------------------------
  1894. Private Sub 群組編碼_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 群組編碼_cb.SelectedIndexChanged
  1895. 群組碼_tb.Text = 群組編碼_cb.Text : Set_清單1()
  1896. End Sub
  1897. Private Sub 新群組1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 新群組1_cb.SelectedIndexChanged
  1898. PA = 新群組1_cb.Text : SQL_群組碼_語轉_選擇() : If dr.Read Then : 群組編碼_cb.Text = dr("群組碼").ToString : End If : PA = ""
  1899. End Sub
  1900. Private Sub 新群組1_cb_Click(sender As Object, e As EventArgs) Handles 新群組1_cb.Click
  1901. CB選擇清單(新群組1_cb, 新群組1_cb.Text)
  1902. End Sub
  1903. Private Sub 合約種類_cb_SelectedIndexChanged_1(sender As Object, e As EventArgs) Handles 合約種類_cb.SelectedIndexChanged
  1904. PA10 = 合約種類_cb.Text : SQL_合約種類英文讀取() : If dr.Read() Then : 合約種類_tb.Text = dr("英") : End If : conn.Close()
  1905. End Sub
  1906. Private Sub 選擇公司_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 選擇公司_cb.SelectedIndexChanged
  1907. If 選擇公司_cb.Text = "PT HONG XHE INDUSTRIAL" Then : 合約編號_cb.Text = "HX" : Else : 合約編號_cb.Text = "PGS" : End If
  1908. End Sub
  1909. Private Sub 合約編號_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 合約編號_cb.SelectedIndexChanged
  1910. If 合約編號_cb.Text = "HX" Then : 選擇公司_cb.Text = "PT HONG XHE INDUSTRIAL" : Else : 選擇公司_cb.Text = "PT PUNCAK GEMILANG SEMESTA" : End If
  1911. End Sub
  1912. Private Sub 查詢_bt_Click(sender As Object, e As EventArgs) Handles 查詢_bt.Click
  1913. PA = 關鍵字搜尋_tb.Text : Set_合約清單() : 縮放2_bt.PerformClick()
  1914. End Sub
  1915. Private Sub NUD3_ValueChanged(sender As Object, e As EventArgs) Handles NUD3.ValueChanged
  1916. If CH2.Checked = True Then
  1917. If 稅額顯示_lb.Text = "PPN 10%稅額 = Rp. " Then : NUD2.Value = NUD3.Value / 110 * 10
  1918. ElseIf 稅額顯示_lb.Text = "PPN 11%稅額 = Rp. " Then : NUD2.Value = NUD3.Value / 111 * 11
  1919. End If
  1920. NUD1.Value = NUD3.Value - NUD2.Value
  1921. 金額1_und.Value = NUD3.Value / 100 * 工程款1_nud.Value : 金額2_und.Value = NUD3.Value / 100 * 工程款2_nud.Value
  1922. 金額3_und.Value = NUD3.Value / 100 * 工程款3_nud.Value : 金額4_und.Value = NUD3.Value / 100 * 工程款4_nud.Value
  1923. 金額5_und.Value = NUD3.Value / 100 * 工程款5_nud.Value
  1924. 金額6_und.Value = 金額1_und.Value + 金額2_und.Value + 金額3_und.Value + 金額4_und.Value + 金額5_und.Value
  1925. End If
  1926. End Sub
  1927. Private Sub NUD1_ValueChanged(sender As Object, e As EventArgs) Handles NUD1.ValueChanged
  1928. If CH1.Checked = True Then
  1929. If 稅額顯示_lb.Text = "PPN 10%稅額 = Rp. " Then : NUD2.Value = NUD1.Value / 100 * 10
  1930. ElseIf 稅額顯示_lb.Text = "PPN 11%稅額 = Rp. " Then : NUD2.Value = NUD1.Value / 100 * 11
  1931. End If
  1932. NUD3.Value = NUD1.Value + NUD2.Value
  1933. 金額1_und.Value = NUD3.Value / 100 * 工程款1_nud.Value : 金額2_und.Value = NUD3.Value / 100 * 工程款2_nud.Value
  1934. 金額3_und.Value = NUD3.Value / 100 * 工程款3_nud.Value : 金額4_und.Value = NUD3.Value / 100 * 工程款4_nud.Value
  1935. 金額5_und.Value = NUD3.Value / 100 * 工程款5_nud.Value
  1936. 金額6_und.Value = 金額1_und.Value + 金額2_und.Value + 金額3_und.Value + 金額4_und.Value + 金額5_und.Value
  1937. End If
  1938. End Sub
  1939. Private Sub CH1_CheckedChanged(sender As Object, e As EventArgs) Handles CH1.Click
  1940. CH1.Checked = True : CH2.Checked = False : NUD1.Enabled = True : NUD3.Enabled = False
  1941. End Sub
  1942. Private Sub CH2_CheckedChanged(sender As Object, e As EventArgs) Handles CH2.Click
  1943. CH1.Checked = False : CH2.Checked = True : NUD1.Enabled = False : NUD3.Enabled = True
  1944. End Sub
  1945. Private Sub 工程款1_nud_ValueChanged(sender As Object, e As EventArgs) Handles 工程款1_nud.ValueChanged
  1946. 工程款6_nud.Value = 工程款1_nud.Value + 工程款2_nud.Value + 工程款3_nud.Value + 工程款4_nud.Value + 工程款5_nud.Value
  1947. 金額1_und.Value = NUD3.Value / 100 * 工程款1_nud.Value : 金額6_und.Value = 金額1_und.Value + 金額2_und.Value + 金額3_und.Value + 金額4_und.Value + 金額5_und.Value
  1948. End Sub
  1949. Private Sub 工程款2_nud_ValueChanged(sender As Object, e As EventArgs) Handles 工程款2_nud.ValueChanged
  1950. 工程款6_nud.Value = 工程款1_nud.Value + 工程款2_nud.Value + 工程款3_nud.Value + 工程款4_nud.Value + 工程款5_nud.Value
  1951. 金額2_und.Value = NUD3.Value / 100 * 工程款2_nud.Value : 金額6_und.Value = 金額1_und.Value + 金額2_und.Value + 金額3_und.Value + 金額4_und.Value + 金額5_und.Value
  1952. End Sub
  1953. Private Sub 工程款3_nud_ValueChanged(sender As Object, e As EventArgs) Handles 工程款3_nud.ValueChanged
  1954. 工程款6_nud.Value = 工程款1_nud.Value + 工程款2_nud.Value + 工程款3_nud.Value + 工程款4_nud.Value + 工程款5_nud.Value
  1955. 金額3_und.Value = NUD3.Value / 100 * 工程款3_nud.Value : 金額6_und.Value = 金額1_und.Value + 金額2_und.Value + 金額3_und.Value + 金額4_und.Value + 金額5_und.Value
  1956. End Sub
  1957. Private Sub 工程款4_nud_ValueChanged(sender As Object, e As EventArgs) Handles 工程款4_nud.ValueChanged
  1958. 工程款6_nud.Value = 工程款1_nud.Value + 工程款2_nud.Value + 工程款3_nud.Value + 工程款4_nud.Value + 工程款5_nud.Value
  1959. 金額4_und.Value = NUD3.Value / 100 * 工程款4_nud.Value : 金額6_und.Value = 金額1_und.Value + 金額2_und.Value + 金額3_und.Value + 金額4_und.Value + 金額5_und.Value
  1960. End Sub
  1961. Private Sub 工程款5_nud_ValueChanged(sender As Object, e As EventArgs) Handles 工程款5_nud.ValueChanged
  1962. 工程款6_nud.Value = 工程款1_nud.Value + 工程款2_nud.Value + 工程款3_nud.Value + 工程款4_nud.Value + 工程款5_nud.Value
  1963. 金額5_und.Value = NUD3.Value / 100 * 工程款5_nud.Value : 金額6_und.Value = 金額1_und.Value + 金額2_und.Value + 金額3_und.Value + 金額4_und.Value + 金額5_und.Value
  1964. End Sub
  1965. Private Sub 自動讀取_bt_Click(sender As Object, e As EventArgs) Handles 自動讀取_bt.Click
  1966. If 客戶名稱_tb.Text = "" Then : MGB(系統語言字典("H102-104-" & 語言), 1) : Else : MGB(系統語言字典("H102-105-" & 語言), 1) : 合約_dgv.Enabled = False
  1967. PA30 = 合約編號1_tb.Text : SQL_客戶資料讀取() : If dr.Read() Then : 合約編號1_tb.Text = dr("簡稱") : End If : conn.Close()
  1968. If 合約編號_cb.Text = "" Or 合約編號1_tb.Text = "" Then : MGB(系統語言字典("H102-106-" & 語言), 1) : Else
  1969. 合約編號2_tb.Enabled = False : 合約編號3_tb.Enabled = False
  1970. PA = Strings.Mid(Strings.Format(Today(), "yyyy/MM/dd"), 3, 2) & Strings.Mid(Strings.Format(Today(), "yyyy/MM/dd"), 6, 2) & Strings.Right(Strings.Format(Today(), "yyyy/MM/dd"), 2)
  1971. SQL_合約流水號_最後一筆資料()
  1972. If dr.Read() Then
  1973. If Val(Strings.Right(dr("合約編號").ToString, 2)) > 9 Then : EDR = Strings.Right(dr("合約編號").ToString, 2) : Else : EDR = Strings.Right(dr("合約編號").ToString, 1) : End If
  1974. End If : conn.Close() : EDR += 1 : 合約編號2_tb.Text = PA : 合約編號3_tb.Text = EDR : 預設資料1()
  1975. End If
  1976. End If
  1977. End Sub
  1978. Private Sub 手動輸入_bt_Click(sender As Object, e As EventArgs) Handles 手動輸入_bt.Click
  1979. MGB(系統語言字典("H102-105-" & 語言), 1) : 通知視窗.ShowDialog() : 合約_dgv.Enabled = False : 合約編號2_tb.Enabled = True : 合約編號3_tb.Enabled = True : 預設資料1()
  1980. End Sub
  1981. Private Sub 刪除合約_bt_Click(sender As Object, e As EventArgs) Handles 刪除合約_bt.Click
  1982. MGB(系統語言字典("G000-213-" & 語言), 2)
  1983. If 訊息回應 = "YES" Then : INB(系統語言字典("G000-214-" & 語言)) : PA = 訊息回應
  1984. If PA = "YES" Then : PA = 合約編號_tb.Text : SQL_合約刪除() : SQL_合約本文刪除_依合約() : SQL_合約明細刪除_全部() : SQL_合約附錄刪除_全部()
  1985. SQL_合約總表刪除_全部() : SQL_合約報價明細刪除_全部() : SQL_合約報價係數刪除_全部() : SQL_合約試算分表刪除() : SQL_合約試算控制表刪除()
  1986. SQL_合約試算明細表刪除() : SQL_合約請款刪除_全部()
  1987. MGB(系統語言字典("G000-120-" & 語言), 2) : Set_合約報價總表() : Set_合約報價係數() : Set_合約報價明細表() : Set_合約清單()
  1988. End If
  1989. End If
  1990. End Sub
  1991. Private Sub 存檔_tb_Click(sender As Object, e As EventArgs) Handles 存檔_tb.Click
  1992. Dim 合約編號條件 As Boolean = True
  1993. If 合約種類_cb.Text = "" Then : MGB(系統語言字典("H102-107-" & 語言), 1) : Else
  1994. If 合約編號_cb.Text = "" Then : MGB(系統語言字典("G000-202-" & 語言), 1) : 合約編號條件 = False : End If
  1995. If 合約編號1_tb.Text = "" Then : MGB(系統語言字典("G000-203-" & 語言), 1) : 合約編號條件 = False : Else
  1996. Dim d As Int32
  1997. For index = 0 To 合約編號1_tb.Text.Length - 1
  1998. d = Asc(合約編號1_tb.Text(index))
  1999. Dim 可能不行 As Boolean = False
  2000. If (d < 65 Or d > 90) Then : 可能不行 = True : End If 'c變數若在65~90是大寫的英文字母
  2001. If 可能不行 = True Then
  2002. If (d < 97 Or d > 122) Then : 可能不行 = True : Else : 可能不行 = False : End If 'c變數若在97~122是小寫的英文字母
  2003. If 可能不行 = True Then '然後查表, c變數若在48~57, 表示它是數字,
  2004. If (d < 48 Or d > 57) Then : MGB(系統語言字典("G000-204-" & 語言), 1) : 通知視窗.ShowDialog() : 合約編號條件 = False : Exit For : End If
  2005. End If
  2006. End If
  2007. Next
  2008. End If
  2009. If 合約編號2_tb.Text = "" Then : MGB(系統語言字典("G000-205-" & 語言), 1) : 通知視窗.ShowDialog() : 合約編號條件 = False : End If
  2010. Dim c As Int32 '然後查表, c變數若在48~57, 表示它是數字,
  2011. For index = 0 To 合約編號2_tb.Text.Length - 1
  2012. c = Asc(合約編號2_tb.Text(index))
  2013. If c < 48 Or c > 57 Then : MGB(系統語言字典("G000-206-" & 語言), 1) : 合約編號條件 = False : Exit For : Else
  2014. If Len(合約編號2_tb.Text) <> 6 Then : MGB(系統語言字典("G000-207-" & 語言), 1) : 通知視窗.ShowDialog() : 合約編號條件 = False : Exit For : End If
  2015. End If
  2016. Next
  2017. If 合約編號3_tb.Text = "" Then : MGB(系統語言字典("G000-208-" & 語言), 1) : 通知視窗.ShowDialog() : 合約編號條件 = False
  2018. ElseIf IsNumeric(合約編號3_tb.Text) = False Then : MGB(系統語言字典("G000-209-" & 語言), 1) : 通知視窗.ShowDialog() : 合約編號條件 = False : End If
  2019. If 合約編號條件 = False Then : Else
  2020. If 工程款6_nud.Value <> 100 Then : MGB(系統語言字典("H108-129-" & 語言), 1) : Else
  2021. PA = 合約編號_cb.Text & "-" & 合約編號1_tb.Text & " " & 合約編號2_tb.Text & "-" & 合約編號3_tb.Text : 合約編號_tb.Text = PA
  2022. SQL_合約查詢()
  2023. If dr.Read() Then : MGB(系統語言字典("H102-113-" & 語言), 2) : If 訊息回應 = "YES" Then : 合約存檔() : End If : Else
  2024. 合約編號_tb.Text = 合約編號_cb.Text & "-" & 合約編號1_tb.Text & " " & 合約編號2_tb.Text & "-" & 合約編號3_tb.Text
  2025. 報價單合約編號_tb.Text = 合約編號_tb.Text : 報價單客戶名稱_cb.Text = 客戶名稱_tb.Text
  2026. 報價單立約日期_dtp.Value = 立約日期_dtp.Value : 報價工程名稱_中_tb.Text = 工程名稱_中_tb.Text
  2027. 報價工程名稱_英_tb.Text = 工程名稱_英_tb.Text
  2028. 合約存檔()
  2029. End If
  2030. If 複製報價 = False Then
  2031. PA = 合約編號_tb.Text : Set_合約報價總表() : Set_合約報價係數() : Set_合約報價明細表()
  2032. PA = 合約編號_tb.Text : If 報價明細表_dgv.Rows.Count = 0 Then : For i As Integer = 1 To 3 : 新增資料2() : Next : End If : Set_合約報價明細表()
  2033. '------比對總表無資料時開基本條例-------------------------------------------------
  2034. 總表範例_bt.PerformClick() : 甲方條件下拉清單讀取() : 合約編號1_cb.Text = 條件選擇
  2035. End If
  2036. End If
  2037. End If
  2038. End If
  2039. End Sub
  2040. Private Sub 新增資料2()
  2041. If 合約編號_tb.Text = "" Then : MGB(系統語言字典("H115-122-" & 語言), 1) : Else : 報價明細表存檔()
  2042. PA = 合約編號_tb.Text : PA2 = "" : PA3 = "" : PA4 = "" : PA5 = "0" : PA6 = "0" : PA7 = "0" : PA8 = "" : PA10 = "" : PA11 = "" : PA12 = "" : PA13 = ""
  2043. PA14 = "" : PA15 = "" : PA16 = "" : BL = False : BL1 = False : BL2 = False : BL3 = False : BL4 = False : BL5 = False : BL6 = False : BL7 = False
  2044. BL8 = False : BL9 = True : 明細表新增資料()
  2045. End If
  2046. End Sub
  2047. Private Sub 合約存檔()
  2048. '-----判斷是否新增客戶資料-----------------------
  2049. PA30 = 合約編號1_tb.Text : Dim 供應商編號 As String : SQL_客戶資料讀取()
  2050. If dr.Read() Then
  2051. If 負責人_A_cb.Text <> dr("負責人").ToString And 負責人_A_cb.Text <> "" And dr("負責人").ToString <> "" Then
  2052. MGB(系統語言字典("H102-127-" & 語言), 2)
  2053. If 訊息回應 = "YES" Then : PA43 = 負責人_A_cb.Text : PA42 = 客戶名稱_tb.Text : conn.Close() : SQL_客戶資料表_修改負責人() : End If
  2054. ElseIf 負責人_A_cb.Text <> "" And dr("負責人").ToString = "" Then
  2055. PA43 = 負責人_A_cb.Text : PA42 = 客戶名稱_tb.Text : conn.Close() : SQL_客戶資料表_修改負責人()
  2056. End If
  2057. Else
  2058. conn.Close() : SQL_客戶資料表_最後一筆資料()
  2059. If dr.Read() Then : 供應商編號 = dr("流水號").ToString : Else : 供應商編號 = "CL000" : End If
  2060. conn.Close() : Dim NUM1 As Integer
  2061. NUM1 = Double.Parse(Strings.Right(供應商編號, 3)) + 1
  2062. If NUM1 < 10 Then : 供應商編號 = "CL" & "00" & NUM1
  2063. ElseIf NUM1 > 9 And NUM1 < 100 Then : 供應商編號 = "CL" & "0" & NUM1
  2064. ElseIf NUM1 > 99 Then : 供應商編號 = "CL" & NUM1 : End If
  2065. PA29 = 供應商編號 : PA41 = 合約編號1_tb.Text : PA40 = 客戶名稱_tb.Text : PA39 = 客戶地址_tb.Text : PA38 = 負責人_A_cb.Text
  2066. SQL_合約系統中新增客戶資料() : conn.Close()
  2067. End If : conn.Close()
  2068. PA37 = 合約種類_cb.Text : PA36 = 合約種類_tb.Text
  2069. SQL_合約種類查詢() : If dr.Read() Then : Else : SQL_合約種類新增() : conn.Close() : End If : conn.Close()
  2070. PA = 合約編號_cb.Text & "-" & 合約編號1_tb.Text & " " & 合約編號2_tb.Text & "-" & 合約編號3_tb.Text
  2071. PA36 = 客戶名稱_tb.Text : PA35 = 負責人_A_cb.Text : PA34 = 工程地點_tb.Text : PA33 = 客戶地址_tb.Text : PA32 = 工程名稱_中_tb.Text : PA31 = 工程名稱_英_tb.Text
  2072. PA30 = 選擇公司_cb.Text : PA29 = 負責人_B_cb.Text : PA28 = 我司地址_tb.Text : PA27 = NUD3.Value : PA26 = 工程款1_nud.Value : PA25 = 工程款2_nud.Value
  2073. PA24 = 工程款3_nud.Value : PA23 = 工程款4_nud.Value : PA22 = 工程款5_nud.Value : PA21 = 工期_nud.Value : PA20 = 逾期_bt.Text : PA19 = 最高扣款_bt.Text
  2074. PA18 = 逾期_英_bt.Text : PA17 = 最高扣款_英_bt.Text : PA16 = 減價_bt.Text : PA15 = 廠區_中文_tb.Text : PA14 = 頁數_bt.Text : PA12 = 合約種類_cb.Text
  2075. PA13 = Strings.Format(立約日期_dtp.Value, "yyyy/MM/dd") : PA44 = 合約編號2_tb.Text : PA45 = 合約編號3_tb.Text : PA46 = 合約編號1_tb.Text : PA47 = 工程期_ch.Text
  2076. BL1 = 合約停止_ch.Checked : PA10 = 折讓比例_nud.Value : PA9 = 歸零位數_nud.Value : BL2 = 稅前歸零_ch.Checked : BL3 = 稅後歸零_ch.Checked
  2077. If 美金_ch.Checked = True Then : PA11 = "美金" : ElseIf 台幣_ch.Checked = True Then : PA11 = "台幣"
  2078. ElseIf 人民幣_ch.Checked = True Then : PA11 = "人民幣" : ElseIf 印尼盾_ch.Checked = True Then : PA11 = "印尼盾" : End If
  2079. 匯率() : PA48 = 匯率1
  2080. SQL_合約查詢() : If dr.Read() Then : SQL_合約修改1() : conn.Close() : Else : SQL_合約新增() : conn.Close() : End If
  2081. PA = 合約編號_cb.Text & "-" & 合約編號1_tb.Text & " " & 合約編號2_tb.Text & "-" & 合約編號3_tb.Text
  2082. MGB(系統語言字典("H102-128-" & 語言), 1) : Set_合約清單() : 合約_dgv.Enabled = True
  2083. End Sub
  2084. Private Sub 合約編號1_tb_TextChanged(sender As Object, e As EventArgs) Handles 合約編號1_tb.TextChanged
  2085. 合約編號1_tb.Text = 合約編號1_tb.Text.ToUpper : PA30 = 合約編號1_tb.Text : SQL_客戶資料讀取()
  2086. If dr.Read() Then : 客戶名稱_tb.Text = dr("客戶名稱") : 負責人_A_cb.Text = dr("負責人") : 客戶地址_tb.Text = dr("地址") : End If : conn.Close()
  2087. End Sub
  2088. '-----------------合約報價總表-------------------------------------------------------------------------------------------------------------------------------
  2089. Private Sub 合約報價總表_最後一筆資料()
  2090. SQL_合約報價總表_最後一筆資料()
  2091. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("流水號").ToString, 9)) : Else : EDR = 0 : End If : conn.Close() : EDR += 1
  2092. If EDR < 10 Then : ESTR = "GT" & "00000000" & EDR : ElseIf EDR > 9 And EDR < 100 Then : ESTR = "GT" & "0000000" & EDR
  2093. ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "GT" & "000000" & EDR : ElseIf EDR > 999 And EDR < 10000 Then : ESTR = "GT" & "00000" & EDR
  2094. ElseIf EDR > 9999 And EDR < 100000 Then : ESTR = "GT" & "0000" & EDR : ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "GT" & "000" & EDR
  2095. ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "GT" & "00" & EDR : ElseIf EDR > 9999999 And EDR < 10000000 Then : ESTR = "GT" & "0" & EDR
  2096. ElseIf EDR > 99999999 Then : ESTR = "GT" & EDR : End If : PA9 = ESTR
  2097. End Sub
  2098. Private Sub 總表範例新增()
  2099. 合約報價總表_最後一筆資料() : PA10 = ""
  2100. SQL_合約報價總表_最後一筆排序()
  2101. If dr.Read() Then : PA1 = dr("排序") : Else : PA1 = "00" : End If : conn.Close() : NUM1 = Double.Parse(PA1) + 1
  2102. If NUM1 < 10 Then : PA1 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : PA1 = "0" & NUM1 : ElseIf NUM1 > 99 Then : PA1 = NUM1 : End If
  2103. SQL_合約報價總表_新增資料()
  2104. End Sub
  2105. Private Sub 總表範例新增_未稅()
  2106. 合約報價總表_最後一筆資料() : PA10 = ""
  2107. SQL_合約報價總表_最後一筆排序()
  2108. If dr.Read() Then : PA1 = dr("排序") : Else : PA1 = "00" : End If : conn.Close() : NUM1 = Double.Parse(PA1) - 2
  2109. If NUM1 < 10 Then : PA1 = "00" & NUM1 & "-1" : ElseIf NUM1 > 9 And NUM1 < 100 Then : PA1 = "0" & NUM1 & "-1" : ElseIf NUM1 > 99 Then : PA1 = NUM1 & "-1" : End If
  2110. SQL_合約報價總表_新增資料()
  2111. End Sub
  2112. Private Sub 總表範例_bt_Click(sender As Object, e As EventArgs) Handles 總表範例_bt.Click
  2113. If 報價總表_dgv.Rows.Count = 0 Then
  2114. For I As Integer = 1 To 8
  2115. PA = 合約編號_tb.Text
  2116. If I = 1 Then : PA2 = "" : PA3 = ""
  2117. ElseIf I = 2 Then : PA2 = "" : PA3 = ""
  2118. ElseIf I = 3 Then : PA2 = "#" : PA3 = "管理費 7%" : PA4 = "" : PA5 = "0" : PA6 = "0" : PA7 = "0" : PA8 = ""
  2119. ElseIf I = 4 Then : PA2 = "^" : PA3 = "折讓 Discount" : PA4 = "" : PA5 = "1" : PA6 = "0" : PA7 = "0" : PA8 = ""
  2120. ElseIf I = 5 Then : PA2 = "$" : PA3 = "小計(未稅) Subtotal(Excluding Tax)" : PA4 = "" : PA5 = "0" : PA6 = "0" : PA7 = "0" : PA8 = ""
  2121. ElseIf I = 6 Then : PA2 = "" : PA3 = "" : PA4 = "" : PA5 = "" : PA6 = "0" : PA7 = "0" : PA8 = ""
  2122. ElseIf I = 7 Then : PA2 = "*" : PA3 = "稅金 11% Tax" : PA4 = "" : PA5 = "0" : PA6 = "0" : PA7 = "0" : PA8 = ""
  2123. ElseIf I = 8 Then : PA2 = "@" : PA3 = "總計(含稅) Grand Total(Including Tax)" : PA4 = "" : PA5 = "0" : PA6 = "0" : PA7 = "0" : PA8 = ""
  2124. End If : 總表範例新增()
  2125. Next
  2126. Set_合約報價總表()
  2127. Else
  2128. Dim 新開1 As Boolean = True : Dim 新開2 As Boolean = True : Dim 新開3 As Boolean = True : Dim 新開4 As Boolean = True : Dim 新開5 As Boolean = True
  2129. For I As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  2130. If 報價總表_dgv.Rows(I).Cells("ITEM").Value.ToString = "^" And Strings.Left(報價總表_dgv.Rows(I).Cells("DESCRIPTION").Value.ToString, 2) = "管理" Then
  2131. 新開1 = False : Exit For : End If : Next
  2132. For I As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  2133. If 報價總表_dgv.Rows(I).Cells("ITEM").Value.ToString = "*" And Strings.Left(報價總表_dgv.Rows(I).Cells("DESCRIPTION").Value.ToString, 2) = "稅金" Then
  2134. 新開2 = False : Exit For : End If : Next
  2135. For I As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  2136. If 報價總表_dgv.Rows(I).Cells("ITEM").Value.ToString = "@" And Strings.Left(報價總表_dgv.Rows(I).Cells("DESCRIPTION").Value.ToString, 2) = "總計" Then
  2137. 新開3 = False : Exit For : End If : Next
  2138. For I As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  2139. If 報價總表_dgv.Rows(I).Cells("ITEM").Value.ToString = "#" And Strings.Left(報價總表_dgv.Rows(I).Cells("DESCRIPTION").Value.ToString, 2) = "折讓" Then
  2140. 新開4 = False : Exit For : End If : Next
  2141. For I As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  2142. If 報價總表_dgv.Rows(I).Cells("ITEM").Value.ToString = "$" And Strings.Left(報價總表_dgv.Rows(I).Cells("DESCRIPTION").Value.ToString, 2) = "小計" Then
  2143. 新開5 = False : Exit For : End If : Next
  2144. If 新開1 = True Or 新開2 = True Or 新開3 = True Then : PA = 合約編號_tb.Text : PA2 = "" : PA3 = "" : PA4 = "" : PA5 = "0" : PA6 = "0" : PA7 = "0" : PA8 = ""
  2145. 總表範例新增() : End If
  2146. If 新開1 = True Then : PA = 合約編號_tb.Text : PA2 = "^" : PA3 = "管理費 7%" : PA4 = "" : PA5 = "0" : PA6 = "0" : PA7 = "0" : PA8 = ""
  2147. 總表範例新增() : End If
  2148. If 新開4 = True Then : PA = 合約編號_tb.Text : PA2 = "#" : PA3 = "折讓 Discount" : PA4 = "" : PA5 = "1" : PA6 = "0" : PA7 = "0" : PA8 = ""
  2149. 總表範例新增() : End If
  2150. If 新開2 = True Then : PA = 合約編號_tb.Text : PA2 = "*" : PA3 = "稅金 11% Tax" : PA4 = "" : PA5 = "0" : PA6 = "0" : PA7 = "0" : PA8 = ""
  2151. 總表範例新增() : End If
  2152. If 新開3 = True Then : PA = 合約編號_tb.Text : PA2 = "@" : PA3 = "總計(含稅) Grand Total(Including Tax)" : PA4 = "" : PA5 = "0" : PA6 = "0" : PA7 = "0" : PA8 = ""
  2153. 總表範例新增() : End If
  2154. If 新開5 = True Then : PA = 合約編號_tb.Text : PA2 = "$" : PA3 = "小計(未稅) Subtotal(Excluding Tax)" : PA4 = "" : PA5 = "0" : PA6 = "0" : PA7 = "0" : PA8 = ""
  2155. 總表範例新增_未稅() : PA2 = "" : PA3 = "" : 總表範例新增_未稅() : End If
  2156. Set_合約報價總表()
  2157. End If
  2158. End Sub
  2159. Private Sub 報價總表存檔()
  2160. For i As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  2161. For ii As Integer = 0 To 報價總表_存_dgv.Rows.Count - 1
  2162. If 報價總表_dgv.Rows(i).Cells("流水號").Value.ToString = 報價總表_存_dgv.Rows(ii).Cells("流水號").Value.ToString Then
  2163. If 報價總表_dgv.Rows(i).Cells("排序").Value.ToString <> 報價總表_存_dgv.Rows(ii).Cells("排序").Value.ToString Or
  2164. 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString <> 報價總表_存_dgv.Rows(ii).Cells("ITEM").Value.ToString Or
  2165. 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString <> 報價總表_存_dgv.Rows(ii).Cells("DESCRIPTION").Value.ToString Or
  2166. 報價總表_dgv.Rows(i).Cells("UNIT").Value.ToString <> 報價總表_存_dgv.Rows(ii).Cells("UNIT").Value.ToString Or
  2167. 報價總表_dgv.Rows(i).Cells("QTY").Value <> 報價總表_存_dgv.Rows(ii).Cells("QTY").Value Or
  2168. 報價總表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value <> 報價總表_存_dgv.Rows(ii).Cells("UNIT PRICE" & 幣別).Value Or
  2169. 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value <> 報價總表_存_dgv.Rows(ii).Cells("AMOUNT" & 幣別).Value Or
  2170. 報價總表_dgv.Rows(i).Cells("REMARKS").Value.ToString <> 報價總表_存_dgv.Rows(ii).Cells("REMARKS").Value.ToString Or
  2171. 報價總表_dgv.Rows(i).Cells("明細連動").Value.ToString <> 報價總表_存_dgv.Rows(ii).Cells("明細連動").Value.ToString Then
  2172. 報價總表_dgv.Rows(i).Cells("存檔").Value = True : Exit For
  2173. End If
  2174. End If
  2175. Next
  2176. Next
  2177. For i As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  2178. If 報價總表_dgv.Rows(i).Cells("存檔").Value = True Then
  2179. PA1 = 報價總表_dgv.Rows(i).Cells("排序").Value.ToString : PA2 = 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString
  2180. PA3 = 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString : PA4 = 報價總表_dgv.Rows(i).Cells("UNIT").Value.ToString
  2181. PA5 = 報價總表_dgv.Rows(i).Cells("QTY").Value.ToString : PA6 = 報價總表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value.ToString
  2182. PA7 = 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value.ToString : PA8 = 報價總表_dgv.Rows(i).Cells("REMARKS").Value.ToString
  2183. PA9 = 報價總表_dgv.Rows(i).Cells("流水號").Value.ToString : PA10 = 報價總表_dgv.Rows(i).Cells("明細連動").Value.ToString
  2184. SQL_合約報價總表_存檔()
  2185. End If
  2186. Next : SQL_合約修改_報價說明()
  2187. End Sub
  2188. Private Sub 新增資料()
  2189. 報價總表存檔()
  2190. For ia As Integer = 1 To PA20
  2191. PA = 合約編號_tb.Text : PA2 = "" : PA3 = "" : PA4 = "" : PA5 = "0" : PA6 = "0" : PA7 = "0" : PA8 = "" : 合約報價總表_最後一筆資料() : PA10 = ""
  2192. If 選擇項_tb.Text = "" Then
  2193. SQL_合約報價總表_最後一筆排序()
  2194. If dr.Read() Then : PA1 = dr("排序") : Else : PA1 = "00" : End If : conn.Close() : NUM1 = Double.Parse(PA1) + 1
  2195. If NUM1 < 10 Then : PA1 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : PA1 = "0" & NUM1 : ElseIf NUM1 > 99 Then : PA1 = NUM1 : End If
  2196. Else : PA1 = 選擇項3_tb.Text & "-1" : End If : SQL_合約報價總表_新增資料()
  2197. Next
  2198. Set_合約報價總表() : 重新排序_總表() : 報價總表存檔()
  2199. End Sub
  2200. Private Sub 新增資料1_bt_Click(sender As Object, e As EventArgs) Handles 新增資料1_bt.Click
  2201. If 合約編號_tb.Text = "" Then : MGB(系統語言字典("H115-122-" & 語言), 1) : Else
  2202. INB(系統語言字典("H102-129-" & 語言)) : PA20 = 訊息回應
  2203. If IsNumeric(PA20) = False Then : MGB(系統語言字典("H115-121-" & 語言), 1) : Else : 新增資料() : End If
  2204. End If
  2205. End Sub
  2206. Private Sub 報價總表存檔按鈕()
  2207. If 報價總表_dgv.Rows.Count = 0 Then : Else
  2208. 報價總表存檔() : PA37 = 合約種類_cb.Text : PA36 = 合約種類_tb.Text : PA = 合約編號_tb.Text
  2209. PA36 = 客戶名稱_tb.Text : PA35 = 負責人_A_cb.Text : PA34 = 工程地點_tb.Text : PA33 = 客戶地址_tb.Text : PA32 = 工程名稱_中_tb.Text : PA31 = 工程名稱_英_tb.Text
  2210. PA30 = 選擇公司_cb.Text : PA29 = 負責人_B_cb.Text : PA28 = 我司地址_tb.Text : PA27 = NUD3.Value : PA26 = 工程款1_nud.Value : PA25 = 工程款2_nud.Value
  2211. PA24 = 工程款3_nud.Value : PA23 = 工程款4_nud.Value : PA22 = 工程款5_nud.Value : PA21 = 工期_nud.Value : PA20 = 逾期_bt.Text : PA19 = 最高扣款_bt.Text
  2212. PA18 = 逾期_英_bt.Text : PA17 = 最高扣款_英_bt.Text : PA16 = 減價_bt.Text : PA15 = 廠區_中文_tb.Text : PA14 = 頁數_bt.Text : PA12 = 合約種類_cb.Text
  2213. PA13 = Strings.Format(立約日期_dtp.Value, "yyyy/MM/dd") : PA44 = 合約編號2_tb.Text : PA45 = 合約編號3_tb.Text : PA46 = 合約編號1_tb.Text : PA47 = 工程期_ch.Text
  2214. BL1 = 合約停止_ch.Checked : PA10 = 折讓比例_nud.Value : PA9 = 歸零位數_nud.Value : BL2 = 稅前歸零_ch.Checked : BL3 = 稅後歸零_ch.Checked
  2215. If 美金_ch.Checked = True Then : PA11 = "美金" : ElseIf 台幣_ch.Checked = True Then : PA11 = "台幣"
  2216. ElseIf 人民幣_ch.Checked = True Then : PA11 = "人民幣" : ElseIf 印尼盾_ch.Checked = True Then : PA11 = "印尼盾" : End If
  2217. 匯率() : PA48 = 匯率1 : SQL_合約修改1() : Set_合約報價總表() : Set_合約清單()
  2218. End If
  2219. End Sub
  2220. Private Sub 報價總表存檔_bt_Click(sender As Object, e As EventArgs) Handles 報價總表存檔_bt.Click
  2221. If 報價總表_dgv.Rows.Count = 0 Then : MGB(系統語言字典("H102-130-" & 語言), 1) : Else
  2222. 報價總表存檔按鈕() : 報價明細表存檔() : Set_合約報價明細表() : 預估利潤存檔() : MGB(系統語言字典("G000-119-" & 語言), 1)
  2223. End If
  2224. End Sub
  2225. Private Sub 總表選擇刪除_bt_Click(sender As Object, e As EventArgs) Handles 總表選擇刪除_bt.Click
  2226. If 總表流水_tb.Text = "" Then : MGB(系統語言字典("H102-131-" & 語言), 1) : Else
  2227. MGB(系統語言字典("H102-103-" & 語言), 2) : If 訊息回應 = "YES" Then : 報價總表存檔() : PA9 = 總表流水_tb.Text : SQL_合約報價總表_刪除資料() : Set_合約報價總表() : End If
  2228. End If
  2229. End Sub
  2230. Private Sub 排序1_bt_Click(sender As Object, e As EventArgs) Handles 排序1_bt.Click
  2231. If 報價總表_dgv.Rows.Count > 0 Then
  2232. If 報價總表_dgv.Columns(0).Visible = False Then : 報價總表_dgv.Columns(0).Visible = True : Else : 報價總表_dgv.Columns(0).Visible = False : End If
  2233. End If
  2234. End Sub
  2235. Private Sub 稅前歸零_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 稅前歸零_ch.Click
  2236. If 稅前歸零_ch.Checked = False And 稅後歸零_ch.Checked = False Then : 稅前歸零_ch.Checked = False : 稅後歸零_ch.Checked = False
  2237. ElseIf 稅前歸零_ch.Checked = True And 稅後歸零_ch.Checked = False Then : 稅前歸零_ch.Checked = True : 稅後歸零_ch.Checked = False
  2238. ElseIf 稅前歸零_ch.Checked = True And 稅後歸零_ch.Checked = True Then : 稅前歸零_ch.Checked = True : 稅後歸零_ch.Checked = False : End If
  2239. End Sub
  2240. Private Sub 稅後歸零_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 稅後歸零_ch.Click
  2241. If 稅前歸零_ch.Checked = False And 稅後歸零_ch.Checked = False Then : 稅前歸零_ch.Checked = False : 稅後歸零_ch.Checked = False
  2242. ElseIf 稅前歸零_ch.Checked = True And 稅後歸零_ch.Checked = False Then : 稅前歸零_ch.Checked = False : 稅後歸零_ch.Checked = True
  2243. ElseIf 稅前歸零_ch.Checked = True And 稅後歸零_ch.Checked = True Then : 稅前歸零_ch.Checked = False : 稅後歸零_ch.Checked = True : End If
  2244. End Sub
  2245. Private Sub 折價計算_bt_Click(sender As Object, e As EventArgs) Handles 折價計算_bt.Click
  2246. Dim SDF As Integer = CLng(未折價前_tb.Text).ToString().Length
  2247. If 歸零位數_nud.Value >= SDF - 1 Then : MGB(系統語言字典("H102-132-" & 語言), 1) : Else
  2248. Dim DD, 歸零前, 歸零後 As Long
  2249. '----------------------折讓計算-------------------------------------------------------------------------------------------
  2250. If 折讓比例_nud.Value > 0 Then
  2251. DD = CLng(未折價前_tb.Text) / 100 * 折讓比例_nud.Value * -1
  2252. For i As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  2253. If 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "折讓 Discount" Then
  2254. 報價總表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value = DD : Exit For
  2255. End If
  2256. Next
  2257. End If : 報價總表_dgv_自動計算()
  2258. '----------------------歸零位數_nud-------------------------------------------------------------------------------------------
  2259. If 歸零位數_nud.Value > 0 Then
  2260. If 稅前歸零_ch.Checked = True Then
  2261. 歸零數_tb.Text = Strings.Right(CLng(未折價前_tb.Text), 歸零位數_nud.Value)
  2262. For i As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  2263. If 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "折讓 Discount" Then
  2264. 報價總表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value = DD - CLng(歸零數_tb.Text) : Exit For
  2265. End If
  2266. Next
  2267. ElseIf 稅後歸零_ch.Checked = True Then
  2268. For i As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  2269. If 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString = "@" Then
  2270. 歸零前 = CLng(報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value.ToString) : Exit For
  2271. End If
  2272. Next
  2273. 歸零數_tb.Text = Strings.Right(歸零前, 歸零位數_nud.Value) : 歸零後 = 歸零前 - CLng(歸零數_tb.Text)
  2274. If 稅額顯示_lb.Text = "PPN 10%稅額 = Rp. " Then : DD = CLng(報價小計_tb.Text) - (歸零後 / 110 * 100)
  2275. ElseIf 稅額顯示_lb.Text = "PPN 11%稅額 = Rp. " Then : DD = CLng(報價小計_tb.Text) - (歸零後 / 111 * 100) : End If
  2276. For i As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  2277. If 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString = "折讓 Discount" Then
  2278. 報價總表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value = CLng(報價總表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value.ToString) - DD : Exit For
  2279. End If
  2280. Next
  2281. End If
  2282. End If : 報價總表_dgv_自動計算()
  2283. End If
  2284. End Sub
  2285. Private Sub 美金_ch_Click(sender As Object, e As EventArgs) Handles 美金_ch.Click
  2286. 美金_ch.Checked = True : 台幣_ch.Checked = False : 人民幣_ch.Checked = False : 印尼盾_ch.Checked = False
  2287. End Sub
  2288. Private Sub 台幣_ch_Click(sender As Object, e As EventArgs) Handles 台幣_ch.Click
  2289. 美金_ch.Checked = False : 台幣_ch.Checked = True : 人民幣_ch.Checked = False : 印尼盾_ch.Checked = False
  2290. End Sub
  2291. Private Sub 人民幣_ch_Click(sender As Object, e As EventArgs) Handles 人民幣_ch.Click
  2292. 美金_ch.Checked = False : 台幣_ch.Checked = False : 人民幣_ch.Checked = True : 印尼盾_ch.Checked = False
  2293. End Sub
  2294. Private Sub 印尼盾_ch_Click(sender As Object, e As EventArgs) Handles 印尼盾_ch.Click
  2295. 美金_ch.Checked = False : 台幣_ch.Checked = False : 人民幣_ch.Checked = False : 印尼盾_ch.Checked = True
  2296. End Sub
  2297. Private Sub 美金_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 美金_ch.CheckedChanged
  2298. If 美金_ch.Checked = True Then : 幣別 = " (USD)" : ElseIf 台幣_ch.Checked = True Then : 幣別 = " (TWD)"
  2299. ElseIf 人民幣_ch.Checked = True Then : 幣別 = " (RMB)" : ElseIf 印尼盾_ch.Checked = True Then : 幣別 = " (RP)" : End If
  2300. End Sub
  2301. Private Sub 台幣_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 台幣_ch.CheckedChanged
  2302. If 美金_ch.Checked = True Then : 幣別 = " (USD)" : ElseIf 台幣_ch.Checked = True Then : 幣別 = " (TWD)"
  2303. ElseIf 人民幣_ch.Checked = True Then : 幣別 = " (RMB)" : ElseIf 印尼盾_ch.Checked = True Then : 幣別 = " (RP)" : End If
  2304. End Sub
  2305. Private Sub 人民幣_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 人民幣_ch.CheckedChanged
  2306. If 美金_ch.Checked = True Then : 幣別 = " (USD)" : ElseIf 台幣_ch.Checked = True Then : 幣別 = " (TWD)"
  2307. ElseIf 人民幣_ch.Checked = True Then : 幣別 = " (RMB)" : ElseIf 印尼盾_ch.Checked = True Then : 幣別 = " (RP)" : End If
  2308. End Sub
  2309. Private Sub 印尼盾_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 印尼盾_ch.CheckedChanged
  2310. If 美金_ch.Checked = True Then : 幣別 = " (USD)" : ElseIf 台幣_ch.Checked = True Then : 幣別 = " (TWD)"
  2311. ElseIf 人民幣_ch.Checked = True Then : 幣別 = " (RMB)" : ElseIf 印尼盾_ch.Checked = True Then : 幣別 = " (RP)" : End If
  2312. End Sub
  2313. '-----------------合約報價總表編輯功能-------------------------------------------------------------------------------------------------------------------------------
  2314. Private Sub 總表編輯()
  2315. If 視窗2_pl.Visible = False Then
  2316. 視窗2_pl.Location = New System.Drawing.Point((Me.Size.Width - 視窗2_pl.Size.Width) / 2, (Me.Size.Height - 視窗2_pl.Size.Height) / 2)
  2317. 視窗2_pl.Visible = True : 視窗2_pl.BringToFront()
  2318. 目前選擇 = "讀取資料" : 座標_lb.Text = 目前選擇
  2319. X_3_tb.Text = "" : Y_3_tb.Text = ""
  2320. 中文大寫1_ch.Checked = True : 中文小寫1_ch.Checked = False : 數字1_ch.Checked = False
  2321. 視窗2_pl.BringToFront()
  2322. Else : End If
  2323. End Sub
  2324. Private Sub ITEM1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ITEM1_cb.Click
  2325. PPCC = ITEM1_cb.Text : 合約報價單項次選擇.ShowDialog() : ITEM1_cb.Text = PPAA
  2326. End Sub
  2327. Private Sub 合計項_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 合計項_cb.SelectedIndexChanged
  2328. 內容_tb.Text = 合計項_cb.Text : ITEM1_cb.Text = "" : 單位_tb.Text = ""
  2329. If 合計項_cb.Text = "合 計 Total" Or 合計項_cb.Text = "稅金 10% Tax" Or 合計項_cb.Text = "稅金 11% Tax" Then : ITEM1_cb.Text = "*"
  2330. ElseIf Strings.Left(合計項_cb.Text, 3) = "管理費" Then : ITEM1_cb.Text = "^"
  2331. ElseIf Strings.Left(合計項_cb.Text, 2) = "折讓" Then : ITEM1_cb.Text = "#"
  2332. ElseIf Strings.Left(合計項_cb.Text, 2) = "小計" Then : ITEM1_cb.Text = "$"
  2333. ElseIf 合計項_cb.Text = "總計 Grand Total" Or 合計項_cb.Text = "總計(含稅) Grand Total(Including Tax)" Then : ITEM1_cb.Text = "@" : End If
  2334. End Sub
  2335. Private Sub 合計項_cb_Click(sender As Object, e As EventArgs) Handles 合計項_cb.Click
  2336. CB選擇清單(合計項_cb, 合計項_cb.Text)
  2337. End Sub
  2338. Private Sub 總表編輯_bt_Click(sender As Object, e As EventArgs) Handles 總表編輯_bt.Click
  2339. 總表編輯() : 視窗3_pl.Visible = False : Set_報價明細表_dgv_利潤表關閉()
  2340. End Sub
  2341. Private Sub 文字資料輸入1_bt_Click(sender As Object, e As EventArgs) Handles 文字資料輸入1_bt.Click
  2342. If 選擇項_tb.Text = "" Then : MGB(系統語言字典("H102-133-" & 語言), 1) : Else
  2343. Dim ZX As Integer = 選擇項_tb.Text
  2344. 報價總表_dgv.Rows(ZX).Cells("ITEM").Value = ITEM1_cb.Text : 報價總表_dgv.Rows(ZX).Cells("UNIT").Value = 單位_tb.Text
  2345. 報價總表_dgv.Rows(ZX).Cells("REMARKS").Value = 備註_tb.Text : 報價總表_dgv.Rows(ZX).Cells("DESCRIPTION").Value = 內容_tb.Text
  2346. If IsNumeric(數量_tb.Text) = False Then : 報價總表_dgv.Rows(ZX).Cells("QTY").Value = 0 : Else : 報價總表_dgv.Rows(ZX).Cells("QTY").Value = 數量_tb.Text : End If
  2347. 報價總表_dgv_自動計算() : 數量_tb.Text = "1"
  2348. End If
  2349. End Sub
  2350. '-----------------合約報價明細表-------------------------------------------------------------------------------------------------------------------------------
  2351. Private Sub 合約報價明細表_最後一筆資料()
  2352. SQL_合約報價明細表_最後一筆資料()
  2353. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("流水號").ToString, 9)) : Else : EDR = 0 : End If : conn.Close() : EDR += 1
  2354. If EDR < 10 Then : ESTR = "GT" & "00000000" & EDR : ElseIf EDR > 9 And EDR < 100 Then : ESTR = "GT" & "0000000" & EDR
  2355. ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "GT" & "000000" & EDR : ElseIf EDR > 999 And EDR < 10000 Then : ESTR = "GT" & "00000" & EDR
  2356. ElseIf EDR > 9999 And EDR < 100000 Then : ESTR = "GT" & "0000" & EDR : ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "GT" & "000" & EDR
  2357. ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "GT" & "00" & EDR : ElseIf EDR > 9999999 And EDR < 10000000 Then : ESTR = "GT" & "0" & EDR
  2358. ElseIf EDR > 99999999 Then : ESTR = "GT" & EDR : End If : PA9 = ESTR
  2359. End Sub
  2360. Private Sub 報價明細表存檔()
  2361. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  2362. For ii As Integer = 0 To 報價明細表_存_dgv.Rows.Count - 1
  2363. If 報價明細表_dgv.Rows(i).Cells("流水號").Value.ToString = 報價明細表_存_dgv.Rows(ii).Cells("流水號").Value.ToString Then
  2364. If 報價明細表_dgv.Rows(i).Cells("排序").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("排序").Value.ToString Or
  2365. 報價明細表_dgv.Rows(i).Cells("ITEM").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("ITEM").Value.ToString Or
  2366. 報價明細表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("DESCRIPTION").Value.ToString Or
  2367. 報價明細表_dgv.Rows(i).Cells("UNIT").Value <> 報價明細表_存_dgv.Rows(ii).Cells("UNIT").Value Or
  2368. 報價明細表_dgv.Rows(i).Cells("QTY").Value <> 報價明細表_存_dgv.Rows(ii).Cells("QTY").Value Or
  2369. 報價明細表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value <> 報價明細表_存_dgv.Rows(ii).Cells("UNIT PRICE" & 幣別).Value Or
  2370. 報價明細表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value <> 報價明細表_存_dgv.Rows(ii).Cells("AMOUNT" & 幣別).Value Or
  2371. 報價明細表_dgv.Rows(i).Cells("REMARKS").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("REMARKS").Value.ToString Or
  2372. 報價明細表_dgv.Rows(i).Cells("實際數量").Value <> 報價明細表_存_dgv.Rows(ii).Cells("實際數量").Value Or
  2373. 報價明細表_dgv.Rows(i).Cells("工資成本單價").Value <> 報價明細表_存_dgv.Rows(ii).Cells("工資成本單價").Value Or
  2374. 報價明細表_dgv.Rows(i).Cells("工資報價單價").Value <> 報價明細表_存_dgv.Rows(ii).Cells("工資報價單價").Value Or
  2375. 報價明細表_dgv.Rows(i).Cells("材料報價單價").Value <> 報價明細表_存_dgv.Rows(ii).Cells("材料報價單價").Value Or
  2376. 報價明細表_dgv.Rows(i).Cells("不計").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("不計").Value.ToString Or
  2377. 報價明細表_dgv.Rows(i).Cells("材料係數").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("材料係數").Value.ToString Or
  2378. 報價明細表_dgv.Rows(i).Cells("D1").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("D1").Value.ToString Or
  2379. 報價明細表_dgv.Rows(i).Cells("D2").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("D2").Value.ToString Or
  2380. 報價明細表_dgv.Rows(i).Cells("D3").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("D3").Value.ToString Or
  2381. 報價明細表_dgv.Rows(i).Cells("D4").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("D4").Value.ToString Or
  2382. 報價明細表_dgv.Rows(i).Cells("D5").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("D5").Value.ToString Or
  2383. 報價明細表_dgv.Rows(i).Cells("D6").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("D6").Value.ToString Or
  2384. 報價明細表_dgv.Rows(i).Cells("D7").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("D7").Value.ToString Or
  2385. 報價明細表_dgv.Rows(i).Cells("D8").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("D8").Value.ToString Or
  2386. 報價明細表_dgv.Rows(i).Cells("層級").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("層級").Value.ToString Or
  2387. 報價明細表_dgv.Rows(i).Cells("地點_中").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("地點_中").Value.ToString Or
  2388. 報價明細表_dgv.Rows(i).Cells("地點_印").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("地點_印").Value.ToString Or
  2389. 報價明細表_dgv.Rows(i).Cells("主項_中").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("主項_中").Value.ToString Or
  2390. 報價明細表_dgv.Rows(i).Cells("主項_印").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("主項_印").Value.ToString Or
  2391. 報價明細表_dgv.Rows(i).Cells("主名_中").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("主名_中").Value.ToString Or
  2392. 報價明細表_dgv.Rows(i).Cells("主名_印").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("主名_印").Value.ToString Or
  2393. 報價明細表_dgv.Rows(i).Cells("項名_中").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("項名_中").Value.ToString Or
  2394. 報價明細表_dgv.Rows(i).Cells("項名_印").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("項名_印").Value.ToString Or
  2395. 報價明細表_dgv.Rows(i).Cells("描述_中").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("描述_中").Value.ToString Or
  2396. 報價明細表_dgv.Rows(i).Cells("描述_印").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("描述_印").Value.ToString Or
  2397. 報價明細表_dgv.Rows(i).Cells("其他_中").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("其他_中").Value.ToString Or
  2398. 報價明細表_dgv.Rows(i).Cells("其他_印").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("其他_印").Value.ToString Or
  2399. 報價明細表_dgv.Rows(i).Cells("工資係數").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("工資係數").Value.ToString Or
  2400. 報價明細表_dgv.Rows(i).Cells("工資單價").Value.ToString <> 報價明細表_存_dgv.Rows(ii).Cells("工資單價").Value.ToString Then
  2401. 報價明細表_dgv.Rows(i).Cells("存檔").Value = True : Exit For
  2402. End If
  2403. End If
  2404. Next
  2405. Next
  2406. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  2407. If 報價明細表_dgv.Rows(i).Cells("存檔").Value = True Then
  2408. PA1 = 報價明細表_dgv.Rows(i).Cells("排序").Value.ToString : PA2 = 報價明細表_dgv.Rows(i).Cells("ITEM").Value.ToString
  2409. PA3 = 報價明細表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString.Replace("'", "") : PA4 = 報價明細表_dgv.Rows(i).Cells("UNIT").Value.ToString
  2410. PA5 = 報價明細表_dgv.Rows(i).Cells("QTY").Value.ToString : PA6 = 報價明細表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value.ToString
  2411. PA7 = 報價明細表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value.ToString : PA8 = 報價明細表_dgv.Rows(i).Cells("REMARKS").Value.ToString
  2412. PA9 = 報價明細表_dgv.Rows(i).Cells("流水號").Value.ToString : PA10 = 報價明細表_dgv.Rows(i).Cells("實際數量").Value.ToString
  2413. PA11 = 報價明細表_dgv.Rows(i).Cells("工資成本單價").Value.ToString : PA12 = 報價明細表_dgv.Rows(i).Cells("工資報價單價").Value.ToString
  2414. PA13 = 報價明細表_dgv.Rows(i).Cells("材料成本單價").Value.ToString : PA14 = 報價明細表_dgv.Rows(i).Cells("材料報價單價").Value.ToString
  2415. PA15 = 報價明細表_dgv.Rows(i).Cells(表頭(9)).Value.ToString : BL = 報價明細表_dgv.Rows(i).Cells("不計").Value
  2416. PA16 = 報價明細表_dgv.Rows(i).Cells("材料係數").Value.ToString : BL1 = 報價明細表_dgv.Rows(i).Cells("D1").Value
  2417. BL2 = 報價明細表_dgv.Rows(i).Cells("D2").Value : BL3 = 報價明細表_dgv.Rows(i).Cells("D3").Value : BL4 = 報價明細表_dgv.Rows(i).Cells("D4").Value
  2418. BL5 = 報價明細表_dgv.Rows(i).Cells("D5").Value : BL6 = 報價明細表_dgv.Rows(i).Cells("D6").Value : BL7 = 報價明細表_dgv.Rows(i).Cells("D7").Value
  2419. BL8 = 報價明細表_dgv.Rows(i).Cells("D8").Value : PB1 = 報價明細表_dgv.Rows(i).Cells("地點_中").Value.ToString
  2420. PB2 = 報價明細表_dgv.Rows(i).Cells("地點_印").Value.ToString : PB3 = 報價明細表_dgv.Rows(i).Cells("主項_中").Value.ToString
  2421. PB4 = 報價明細表_dgv.Rows(i).Cells("主項_印").Value.ToString : PB5 = 報價明細表_dgv.Rows(i).Cells("主名_中").Value.ToString
  2422. PB6 = 報價明細表_dgv.Rows(i).Cells("主名_印").Value.ToString : PB7 = 報價明細表_dgv.Rows(i).Cells("項名_中").Value.ToString
  2423. PB8 = 報價明細表_dgv.Rows(i).Cells("項名_印").Value.ToString : PB9 = 報價明細表_dgv.Rows(i).Cells("描述_中").Value.ToString
  2424. PB10 = 報價明細表_dgv.Rows(i).Cells("描述_印").Value.ToString : PB11 = 報價明細表_dgv.Rows(i).Cells("其他_中").Value.ToString
  2425. PB12 = 報價明細表_dgv.Rows(i).Cells("其他_印").Value.ToString : PB13 = 報價明細表_dgv.Rows(i).Cells("層級").Value.ToString
  2426. PB14 = 報價明細表_dgv.Rows(i).Cells("工資係數").Value.ToString : PB15 = 報價明細表_dgv.Rows(i).Cells("工資單價").Value.ToString
  2427. SQL_合約報價明細表_存檔()
  2428. End If
  2429. Next
  2430. '-----------------預估利潤存檔-------------------------------------------------------------------------------------------------------------------------------
  2431. If 預估工資總成本_tb.Text = "" Then : 預估工資總成本_tb.Text = "0" : End If : PA37 = 預估工資總成本_tb.Text : 預估利潤存檔()
  2432. End Sub
  2433. Private Sub 新增資料2_bt_Click(sender As Object, e As EventArgs) Handles 新增資料2_bt.Click
  2434. If 合約編號_tb.Text = "" Then : MGB(系統語言字典("H115-122-" & 語言), 1) : Else
  2435. 報價明細表存檔()
  2436. INB(系統語言字典("H102-129-" & 語言)) : PA20 = 訊息回應
  2437. If IsNumeric(PA20) = False Then : MGB(系統語言字典("H115-121-" & 語言), 1) : Else
  2438. For ia As Integer = 1 To PA20
  2439. PA = 合約編號_tb.Text : PA2 = "" : PA3 = "" : PA4 = "" : PA5 = "0" : PA6 = "0" : PA7 = "0" : PA8 = "" : PA10 = "" : PA11 = "" : PA12 = ""
  2440. PA13 = "" : PA14 = "" : PA15 = "" : PA16 = "" : BL = False : BL1 = False : BL2 = False : BL3 = False : BL4 = False : BL5 = False : BL6 = False
  2441. BL7 = False : BL8 = False : BL9 = True
  2442. 合約報價明細表_最後一筆資料()
  2443. If 選擇項1_tb.Text = "" Then
  2444. SQL_合約報價明細表_最後一筆排序()
  2445. If dr.Read() Then : PA1 = dr("排序") : Else : PA1 = "00" : End If : conn.Close()
  2446. NUM1 = Double.Parse(PA1) + 1
  2447. If NUM1 < 10 Then : PA1 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : PA1 = "0" & NUM1 : ElseIf NUM1 > 99 Then : PA1 = NUM1 : End If
  2448. Else
  2449. PA1 = 選擇項2_tb.Text & "-1"
  2450. End If : PB14 = 工資系數_cb.Text : PB15 = 工資單價_cb.Text
  2451. SQL_合約報價明細表_新增資料()
  2452. Next : Set_合約報價明細表()
  2453. 重新排序() : 報價明細表存檔()
  2454. End If
  2455. End If
  2456. End Sub
  2457. Private Sub 報價明細表存檔_bt_Click(sender As Object, e As EventArgs) Handles 報價明細表存檔_bt.Click
  2458. If 報價明細表_dgv.Rows.Count = 0 Then : MGB(系統語言字典("H102-130-" & 語言), 1) : Else
  2459. 報價總表存檔按鈕() : 報價明細表存檔() : Set_合約報價明細表() : 預估利潤存檔() : MGB(系統語言字典("H402-119-" & 語言), 1)
  2460. End If
  2461. End Sub
  2462. Private Sub 總表選擇刪除1_bt_Click(sender As Object, e As EventArgs) Handles 總表選擇刪除1_bt.Click
  2463. If 啟用批量選擇_ch.Checked = False Then
  2464. If 明細表流水_tb.Text = "" Then : MGB(系統語言字典("H102-131-" & 語言), 1) : Else
  2465. MGB(系統語言字典("H102-103-" & 語言), 2)
  2466. If 訊息回應 = "YES" Then
  2467. 報價明細表存檔() : PA9 = 明細表流水_tb.Text : SQL_合約報價明細表_刪除資料() : Set_合約報價明細表()
  2468. End If
  2469. End If
  2470. Else
  2471. MGB(系統語言字典("H102-103-" & 語言), 2)
  2472. If 訊息回應 = "YES" Then
  2473. 報價明細表存檔()
  2474. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  2475. If 報價明細表_dgv(表頭(10), i).Value = True Then
  2476. PA9 = 報價明細表_dgv.Rows(i).Cells("流水號").Value.ToString : SQL_合約報價明細表_刪除資料()
  2477. End If
  2478. Next : Set_合約報價明細表() : 啟用批量選擇_ch.Checked = False
  2479. End If
  2480. End If
  2481. End Sub
  2482. Private Sub BOM新增到明細表_bt_Click(sender As Object, e As EventArgs) Handles BOM新增到明細表_bt.Click
  2483. If 合約編號_tb.Text = "" Then : MGB(系統語言字典("H115-122-" & 語言), 1) : Exit Sub : Else
  2484. PA = 合約編號_tb.Text
  2485. If 是否帶入主項目_ch.Checked = True Then
  2486. If ITEM4_cb.Text = "" Then : MGB(系統語言字典("H102-134-" & 語言), 1) : Exit Sub : Else
  2487. If 主項目_tb.Text = "" Then : MGB(系統語言字典("H102-135-" & 語言), 1) : Exit Sub : Else
  2488. PA2 = ITEM4_cb.Text : PA3 = 主項目_tb.Text : PA4 = "" : PA5 = "0" : PA6 = "0" : PA7 = "0" : PA8 = "" : PA10 = "" : PA11 = ""
  2489. PA12 = "" : PA14 = "" : PA15 = "" : PA16 = "" : BL = False : BL1 = False : BL2 = False : BL3 = False : BL4 = False : BL5 = False : BL6 = False
  2490. BL7 = False : BL8 = False : BL9 = True
  2491. 合約報價明細表_最後一筆資料()
  2492. If 選擇項1_tb.Text = "" Then : SQL_合約報價明細表_最後一筆排序()
  2493. If dr.Read() Then : PA1 = dr("排序") : Else : PA1 = "000" : End If : conn.Close()
  2494. NUM1 = Double.Parse(PA1) + 1
  2495. If NUM1 < 10 Then : PA1 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : PA1 = "0" & NUM1 : ElseIf NUM1 > 99 Then : PA1 = NUM1 : End If
  2496. Else : PA1 = 選擇項2_tb.Text & "-00" : End If : PB14 = 工資系數_cb.Text : PB15 = 工資單價_cb.Text : SQL_合約報價明細表_新增資料()
  2497. End If
  2498. End If
  2499. End If
  2500. 報價明細表存檔()
  2501. For i As Integer = 0 To BOM表明細_dgv.Rows.Count - 1
  2502. If BOM表明細_dgv.Rows(i).Cells(35).Value = True Then
  2503. PA2 = BOM表明細_dgv.Rows(i).Cells(表頭(2)).Value.ToString : PA3 = BOM表明細_dgv.Rows(i).Cells(表頭(3)).Value.ToString
  2504. PA4 = BOM表明細_dgv.Rows(i).Cells(表頭(4)).Value.ToString : PA5 = BOM表明細_dgv.Rows(i).Cells(表頭(5)).Value.ToString : PA6 = "0" : PA7 = "0" : PA8 = ""
  2505. PA10 = BOM表明細_dgv.Rows(i).Cells(表頭(5)).Value.ToString : PA11 = "" : PA12 = "" : PA14 = "" : PA15 = BOM表明細_dgv.Rows(i).Cells(表頭(6)).Value.ToString
  2506. 合約報價明細表_最後一筆資料()
  2507. If 選擇項1_tb.Text = "" Then
  2508. SQL_合約報價明細表_最後一筆排序()
  2509. If dr.Read() Then : PA1 = dr("排序") : Else : PA1 = "000" : End If : conn.Close()
  2510. NUM1 = Double.Parse(PA1) + 1
  2511. If NUM1 < 10 Then : PA1 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : PA1 = "0" & NUM1 : ElseIf NUM1 > 99 Then : PA1 = NUM1 : End If
  2512. Else
  2513. If CInt(BOM表明細_dgv.Rows(i).Cells(表頭(2)).Value.ToString) < 10 Then
  2514. PA1 = 選擇項2_tb.Text & "-0" & BOM表明細_dgv.Rows(i).Cells(表頭(2)).Value.ToString
  2515. ElseIf CInt(BOM表明細_dgv.Rows(i).Cells(表頭(2)).Value.ToString) > 9 Then
  2516. PA1 = 選擇項2_tb.Text & "-" & BOM表明細_dgv.Rows(i).Cells(表頭(2)).Value.ToString
  2517. End If
  2518. End If : PB14 = 工資系數_cb.Text : PB15 = 工資單價_cb.Text : SQL_合約報價明細表_新增資料()
  2519. End If
  2520. Next : Set_合約報價明細表() : 重新排序() : 報價明細表存檔()
  2521. End If
  2522. End Sub
  2523. Private Sub 選取資料新增到明細表_bt_Click(sender As Object, e As EventArgs) Handles 選取資料新增到明細表_bt.Click
  2524. If 合約編號_tb.Text = "" Then : MGB(系統語言字典("H115-122-" & 語言), 1) : Else
  2525. 報價明細表存檔()
  2526. For i As Integer = 0 To 報價明細表2_dgv.Rows.Count - 1
  2527. If 報價明細表2_dgv.Rows(i).Cells(表頭(10)).Value = True Then
  2528. PA = 合約編號_tb.Text : PA2 = 報價明細表2_dgv.Rows(i).Cells("ITEM").Value.ToString : PA3 = 報價明細表2_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString
  2529. PA4 = 報價明細表2_dgv.Rows(i).Cells("UNIT").Value.ToString : PA5 = 報價明細表2_dgv.Rows(i).Cells("QTY").Value.ToString : PA6 = "0" : PA7 = "0" : PA8 = ""
  2530. PA10 = 報價明細表2_dgv.Rows(i).Cells("QTY").Value.ToString : PA11 = "" : PA12 = "" : PA14 = "" : PA15 = 報價明細表2_dgv.Rows(i).Cells(表頭(9)).Value.ToString
  2531. PA16 = ""
  2532. For ii As Integer = 0 To 報價係數_dgv.Rows.Count - 1
  2533. If 報價係數_dgv.Rows(ii).Cells("項目").Value.ToString() = 報價明細表2_dgv.Rows(i).Cells("材料係數").Value.ToString Then
  2534. PA16 = 報價明細表2_dgv.Rows(i).Cells("材料係數").Value.ToString : Exit For
  2535. End If
  2536. Next
  2537. BL = 報價明細表2_dgv.Rows(i).Cells("不計").Value : BL1 = 報價明細表2_dgv.Rows(i).Cells("D1").Value
  2538. BL2 = 報價明細表2_dgv.Rows(i).Cells("D1").Value : BL3 = 報價明細表2_dgv.Rows(i).Cells("D1").Value : BL4 = 報價明細表2_dgv.Rows(i).Cells("D1").Value
  2539. BL5 = 報價明細表2_dgv.Rows(i).Cells("D1").Value : BL6 = 報價明細表2_dgv.Rows(i).Cells("D1").Value : BL7 = 報價明細表2_dgv.Rows(i).Cells("D1").Value
  2540. BL8 = 報價明細表2_dgv.Rows(i).Cells("D1").Value : BL9 = 報價明細表2_dgv.Rows(i).Cells("預設").Value
  2541. 合約報價明細表_最後一筆資料()
  2542. If 選擇項1_tb.Text = "" Then
  2543. SQL_合約報價明細表_最後一筆排序()
  2544. If dr.Read() Then : PA1 = dr("排序") : Else : PA1 = "00" : End If : conn.Close()
  2545. NUM1 = Double.Parse(PA1) + 1
  2546. If NUM1 < 10 Then : PA1 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : PA1 = "0" & NUM1 : ElseIf NUM1 > 99 Then : PA1 = NUM1 : End If
  2547. Else : PA1 = 選擇項2_tb.Text & "-" & i + 1 : End If
  2548. PB14 = 工資系數_cb.Text : PB15 = 工資單價_cb.Text : SQL_合約報價明細表_新增資料()
  2549. End If
  2550. Next : Set_合約報價明細表()
  2551. 重新排序() : 報價明細表存檔()
  2552. 全部取消_bt.PerformClick()
  2553. End If
  2554. End Sub
  2555. Private Sub 選擇材料新增到明細表_bt_Click(sender As Object, e As EventArgs) Handles 選擇材料新增到明細表_bt.Click
  2556. If 合約編號_tb.Text = "" Then : MGB(系統語言字典("H102-107-" & 語言), 1) : Else
  2557. If 料號_tb.Text = "" Then : MGB(系統語言字典("H527-178-" & 語言), 1) : Else
  2558. 報價明細表存檔()
  2559. PA = 合約編號_tb.Text : PA2 = ITEM2_cb.Text : PA3 = "" : PA4 = 單位1_tb.Text : PA5 = 實際數量_nud.Value : PA6 = "0" : PA7 = "0" : PA8 = "" : PA10 = 實際數量_nud.Value
  2560. PA11 = 工資成本_nud.Value
  2561. PA12 = "" : PA14 = "" : PA15 = 料號_tb.Text : PA16 = 係數清單_cb.Text : BL = False : BL1 = False : BL2 = False : BL3 = False : BL4 = False : BL5 = False : BL6 = False : BL7 = False
  2562. BL8 = False : BL9 = True
  2563. If 帶上歷史單價_ch.Checked = True Then : PA13 = 歷史單價_tb.Text : 材料成本_nud.Value = 歷史單價_tb.Text : Else : PA13 = "0" : 材料成本_nud.Value = 0 : End If
  2564. 明細表新增資料()
  2565. End If
  2566. End If
  2567. End Sub
  2568. Private Sub 明細表新增資料()
  2569. 合約報價明細表_最後一筆資料()
  2570. If 選擇項1_tb.Text = "" Then
  2571. SQL_合約報價明細表_最後一筆排序()
  2572. If dr.Read() Then : PA1 = dr("排序") : Else : PA1 = "00" : End If : conn.Close()
  2573. NUM1 = Double.Parse(PA1) + 1
  2574. If NUM1 < 10 Then : PA1 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : PA1 = "0" & NUM1 : ElseIf NUM1 > 99 Then : PA1 = NUM1 : End If
  2575. Else : PA1 = 選擇項2_tb.Text & "-1" : End If
  2576. PB14 = 工資系數_cb.Text : PB15 = 工資單價_cb.Text : SQL_合約報價明細表_新增資料()
  2577. If 複製報價 = False Then
  2578. Set_合約報價明細表()
  2579. 重新排序() : 報價明細表存檔()
  2580. End If
  2581. End Sub
  2582. Private Sub 修改明細表上的材料指定_bt_Click(sender As Object, e As EventArgs) Handles 修改明細表上的材料指定_bt.Click
  2583. If 明細表流水_tb.Text = "" Then : MGB(系統語言字典("H115-123-" & 語言), 1) : Else
  2584. If 料號_tb.Text = "" Then : MGB(系統語言字典("H527-178-" & 語言), 1) : Else : 報價明細表存檔()
  2585. PA = 合約編號_tb.Text : PA9 = 明細表流水_tb.Text : PA15 = 料號_tb.Text : PA2 = ITEM2_cb.Text : PA5 = 實際數量_nud.Value : PA4 = 單位1_tb.Text
  2586. If 帶上歷史單價_ch.Checked = True Then : SQL6 = ", 材料成本單價 = N'" & 歷史單價_tb.Text & "' " : 材料成本_nud.Value = 歷史單價_tb.Text
  2587. Else : SQL6 = "" : End If
  2588. SQL_合約報價明細表_存檔_料號() : Set_合約報價明細表() : 文字資料輸入2_bt.PerformClick()
  2589. End If
  2590. End If
  2591. End Sub
  2592. Private Sub 排序2_bt_Click(sender As Object, e As EventArgs) Handles 排序2_bt.Click
  2593. If 報價明細表_dgv.Rows.Count > 0 Then
  2594. If 報價明細表_dgv.Columns(0).Visible = False Then : 報價明細表_dgv.Columns(0).Visible = True : Else : 報價明細表_dgv.Columns(0).Visible = False : End If
  2595. End If : Set_合約報價明細表格式()
  2596. End Sub
  2597. '-----------------合約報價明細表表編輯功能-------------------------------------------------------------------------------------------------------------------------------
  2598. Private Sub 明細表編輯()
  2599. If 視窗3_pl.Visible = False Then
  2600. 視窗3_pl.Location = New System.Drawing.Point((Me.Size.Width - 視窗3_pl.Size.Width) / 2, (Me.Size.Height - 視窗3_pl.Size.Height) / 2) : 視窗3_pl.Visible = True
  2601. 目前選擇 = "讀取資料" : 座標1_lb.Text = 目前選擇
  2602. X_2_tb.Text = "" : Y_2_tb.Text = ""
  2603. Set_報價明細表_dgv_利潤表開啟() : 視窗3_pl.BringToFront()
  2604. Else : 視窗3_pl.Visible = False : End If
  2605. End Sub
  2606. Private Sub 項目_tb_TextChanged(sender As Object, e As EventArgs) Handles 項目_tb.TextChanged
  2607. SQL合約主項下拉()
  2608. 主項_中_cb.Items.Clear() : 主項_印_cb.Items.Clear()
  2609. While (dr.Read()) : 主項_中_cb.Items.Add(dr("主項_中")) : 主項_印_cb.Items.Add(dr("主項_印")) : End While : conn.Close()
  2610. 主名_中_cb.Text = "" : 主名_印_cb.Text = "" : 項名_中_cb.Text = "" : 項名_印_cb.Text = ""
  2611. 描述_中_cb.Text = "" : 描述_印_cb.Text = "" : 其他_中_cb.Text = "" : 其他_印_cb.Text = ""
  2612. If 項目_tb.Text = "第一項" Or 項目_tb.Text = "第二項" Or 項目_tb.Text = "第三項" Then
  2613. 實際數量_nud.Value = 0 : 材料成本_nud.Value = 0 : 工資成本_nud.Value = 0 : 工資系數_cb.Text = "" : 係數清單_cb.Text = ""
  2614. End If
  2615. End Sub
  2616. Private Sub ITEM2_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ITEM2_cb.Click
  2617. PPCC = ITEM2_cb.Text : 合約報價單項次選擇.ShowDialog() : ITEM2_cb.Text = PPAA : 項目_tb.Text = PB
  2618. End Sub
  2619. Private Sub 合計項1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 合計項1_cb.SelectedIndexChanged
  2620. 項目_tb.Text = "" : 主項_中_cb.Text = "" : 主項_印_cb.Text = ""
  2621. 主名_中_cb.Text = "" : 主名_印_cb.Text = "" : 項名_中_cb.Text = "" : 項名_印_cb.Text = "" : 地點_中_tb.Text = ""
  2622. 描述_中_cb.Text = "" : 描述_印_cb.Text = "" : 其他_中_cb.Text = "" : 其他_印_cb.Text = "" : 地點_印_tb.Text = ""
  2623. 內容1_tb.Text = 合計項1_cb.Text : ITEM2_cb.Text = "" : 單位1_tb.Text = "" : If 合計項1_cb.Text <> "" Then : ITEM2_cb.Text = "*" : Else : End If
  2624. End Sub
  2625. Private Sub 工資單價_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 工資單價_cb.SelectedIndexChanged
  2626. For i As Integer = 0 To 報價係數_dgv.Rows.Count - 1
  2627. If 工資單價_cb.Text = 報價係數_dgv.Rows(i).Cells("項目").Value.ToString And 報價係數_dgv.Rows(i).Cells("單位").Value.ToString = "RP" Then
  2628. 工資成本_nud.Value = 報價係數_dgv.Rows(i).Cells("係數").Value.ToString : Exit For
  2629. End If
  2630. Next
  2631. End Sub
  2632. Private Sub 合計項1_cb_Click(sender As Object, e As EventArgs) Handles 合計項1_cb.Click
  2633. CB選擇清單_可選空白(合計項1_cb)
  2634. End Sub
  2635. Private Sub 明細表編輯_bt_Click(sender As Object, e As EventArgs) Handles 明細表編輯_bt.Click
  2636. 明細表編輯() : 視窗2_pl.Visible = False
  2637. End Sub
  2638. Private Sub 文字資料輸入2_bt_Click(sender As Object, e As EventArgs) Handles 文字資料輸入2_bt.Click
  2639. If 選擇項1_tb.Text = "" Then : MGB(系統語言字典("H102-136-" & 語言), 1) : Else
  2640. If (主項_中_cb.Text <> "" And 主項_印_cb.Text = "") Or (主項_中_cb.Text = "" And 主項_印_cb.Text <> "") Then : MGB("第一項目中有中文或是印尼文沒有填入!!", 1) : Exit Sub : End If
  2641. If (主名_中_cb.Text <> "" And 主名_印_cb.Text = "") Or (主名_中_cb.Text = "" And 主名_印_cb.Text <> "") Then : MGB("第二項目中有中文或是印尼文沒有填入!!", 1) : Exit Sub : End If
  2642. If (項名_中_cb.Text <> "" And 項名_印_cb.Text = "") Or (項名_中_cb.Text = "" And 項名_印_cb.Text <> "") Then : MGB("第三項目中有中文或是印尼文沒有填入!!", 1) : Exit Sub : End If
  2643. If (其他_中_cb.Text <> "" And 其他_印_cb.Text = "") Or (其他_中_cb.Text = "" And 其他_印_cb.Text <> "") Then : MGB("其他選項中有中文或是印尼文沒有填入!!", 1) : Exit Sub : End If
  2644. If (地點_中_tb.Text <> "" And 地點_印_tb.Text = "") Or (地點_中_tb.Text = "" And 地點_印_tb.Text <> "") Then : MGB("工程地點中有中文或是印尼文沒有填入!!", 1) : Exit Sub : End If
  2645. If (描述_中_cb.Text <> "" And 描述_印_cb.Text = "") Or (描述_中_cb.Text = "" And 描述_印_cb.Text <> "") Then : MGB("項目描述中有中文或是印尼文沒有填入!!", 1) : Exit Sub : End If
  2646. '-----------------------------項目選項存檔---------------------------------------------------------------------------------------------------------------
  2647. Dim 執行存檔 As Boolean = False
  2648. If ITEM2_cb.Text = "" Then : MGB("項次不可以空白!!", 1) : Else
  2649. If 項目_tb.Text = "第一項" Then
  2650. If 主項_中_cb.Text = "" Then : MGB("第一項目(中文)不可以空白!!", 1) : Else
  2651. If 主項_印_cb.Text = "" Then : MGB("第一項目(印尼文)不可以空白!!", 1) : Else : 執行存檔 = True : End If : End If : End If
  2652. If 項目_tb.Text = "第二項" Then
  2653. If 主項_中_cb.Text = "" Then : MGB("第一項目(中文)不可以空白!!", 1) : Else
  2654. If 主項_印_cb.Text = "" Then : MGB("第一項目(印尼文)不可以空白!!", 1) : Else
  2655. If 其他_中_cb.Text = "" Then
  2656. If 主名_中_cb.Text = "" Then : MGB("第二項目(中文)不可以空白!!", 1) : Else
  2657. If 主名_印_cb.Text = "" Then : MGB("第二項目(印尼文)不可以空白!!", 1) : Else : 執行存檔 = True : End If : End If
  2658. Else
  2659. If 其他_中_cb.Text = "" Then : MGB("其他選項(中文)不可以空白!!", 1) : Else
  2660. If 其他_印_cb.Text = "" Then : MGB("其他選項(印尼文)不可以空白!!", 1) : Else : 執行存檔 = True : End If : End If
  2661. End If
  2662. End If
  2663. End If
  2664. End If
  2665. If 項目_tb.Text = "第三項" Then
  2666. If 主項_中_cb.Text = "" Then : MGB("第一項目(中文)不可以空白!!", 1) : Else
  2667. If 主項_印_cb.Text = "" Then : MGB("第一項目(印尼文)不可以空白!!", 1) : Else
  2668. If 其他_中_cb.Text = "" Then
  2669. If 主名_中_cb.Text = "" Then : MGB("第二項目(中文)不可以空白!!", 1) : Else
  2670. If 主名_印_cb.Text = "" Then : MGB("第二項目(印尼文)不可以空白!!", 1) : Else
  2671. If 項名_中_cb.Text = "" Then : MGB("第三項目(中文)不可以空白!!", 1) : Else
  2672. If 項名_印_cb.Text = "" Then : MGB("第三項目(印尼文)不可以空白!!", 1) : Else : 執行存檔 = True : End If : End If : End If : End If
  2673. Else
  2674. If 其他_中_cb.Text = "" Then : MGB("其他選項(中文)不可以空白!!", 1) : Else
  2675. If 其他_印_cb.Text = "" Then : MGB("其他選項(印尼文)不可以空白!!", 1) : Else : 執行存檔 = True : End If : End If
  2676. End If
  2677. End If
  2678. End If
  2679. End If
  2680. If 執行存檔 = True Then
  2681. If 項目_tb.Text = "第一項" Then
  2682. PB1 = 主項_中_cb.Text : PB2 = 主項_印_cb.Text : PB3 = "" : PB4 = "" : PB9 = "" : PB10 = ""
  2683. PB5 = 描述_中_cb.Text : PB6 = 描述_印_cb.Text : PB7 = 其他_中_cb.Text : PB8 = 其他_印_cb.Text
  2684. ElseIf 項目_tb.Text = "第二項" Then
  2685. PB1 = 主項_中_cb.Text : PB2 = 主項_印_cb.Text : PB3 = 主名_中_cb.Text : PB4 = 主名_印_cb.Text : PB9 = "" : PB10 = ""
  2686. PB5 = 描述_中_cb.Text : PB6 = 描述_印_cb.Text : PB7 = 其他_中_cb.Text : PB8 = 其他_印_cb.Text
  2687. ElseIf 項目_tb.Text = "第三項" Then
  2688. PB1 = 主項_中_cb.Text : PB2 = 主項_印_cb.Text : PB3 = 主名_中_cb.Text : PB4 = 主名_印_cb.Text : PB9 = 項名_中_cb.Text : PB10 = 項名_印_cb.Text
  2689. PB5 = 描述_中_cb.Text : PB6 = 描述_印_cb.Text : PB7 = 其他_中_cb.Text : PB8 = 其他_印_cb.Text
  2690. End If
  2691. SQL_合約項目查詢() : If dr.Read Then : Else : SQL_合約項目新增() : End If
  2692. End If
  2693. End If
  2694. '-----------------------------資料帶入明細表---------------------------------------------------------------------------------------------------------------
  2695. Dim ZX As Integer = 選擇項1_tb.Text : 報價明細表_dgv.Rows(ZX).Cells("不計").Value = 不計_ch.Checked
  2696. 報價明細表_dgv.Rows(ZX).Cells("ITEM").Value = ITEM2_cb.Text : 報價明細表_dgv.Rows(ZX).Cells("REMARKS").Value = 備註1_tb.Text
  2697. 報價明細表_dgv.Rows(ZX).Cells("DESCRIPTION").Value = 內容1_tb.Text : 報價明細表_dgv.Rows(ZX).Cells("UNIT").Value = 單位1_tb.Text
  2698. 報價明細表_dgv.Rows(ZX).Cells("實際數量").Value = 實際數量_nud.Value : 報價明細表_dgv.Rows(ZX).Cells("工資成本單價").Value = 工資成本_nud.Value
  2699. 報價明細表_dgv.Rows(ZX).Cells("材料成本單價").Value = 材料成本_nud.Value : 報價明細表_dgv.Rows(ZX).Cells("工資係數").Value = 工資系數_cb.Text
  2700. 報價明細表_dgv.Rows(ZX).Cells("材料係數").Value = 係數清單_cb.Text : 報價明細表_dgv.Rows(ZX).Cells("工資單價").Value = 工資單價_cb.Text
  2701. 報價明細表_dgv.Rows(ZX).Cells("層級").Value = 項目_tb.Text
  2702. 報價明細表_dgv.Rows(ZX).Cells("地點_中").Value = 地點_中_tb.Text : 報價明細表_dgv.Rows(ZX).Cells("地點_印").Value = 地點_印_tb.Text
  2703. 報價明細表_dgv.Rows(ZX).Cells("主項_中").Value = 主項_中_cb.Text : 報價明細表_dgv.Rows(ZX).Cells("主項_印").Value = 主項_印_cb.Text
  2704. 報價明細表_dgv.Rows(ZX).Cells("主名_中").Value = 主名_中_cb.Text : 報價明細表_dgv.Rows(ZX).Cells("主名_印").Value = 主名_印_cb.Text
  2705. 報價明細表_dgv.Rows(ZX).Cells("項名_中").Value = 項名_中_cb.Text : 報價明細表_dgv.Rows(ZX).Cells("項名_印").Value = 項名_印_cb.Text
  2706. 報價明細表_dgv.Rows(ZX).Cells("描述_中").Value = 描述_中_cb.Text : 報價明細表_dgv.Rows(ZX).Cells("描述_印").Value = 描述_印_cb.Text
  2707. 報價明細表_dgv.Rows(ZX).Cells("其他_中").Value = 其他_中_cb.Text : 報價明細表_dgv.Rows(ZX).Cells("其他_印").Value = 其他_印_cb.Text
  2708. 報價明細表_dgv_自動計算()
  2709. End If
  2710. End Sub
  2711. Private Sub 主項_中_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 主項_中_cb.TextChanged
  2712. If 系統語言 = "繁體中文" Then
  2713. 主項_印_cb.SelectedIndex = 主項_中_cb.SelectedIndex
  2714. PB1 = 主項_中_cb.Text : 其他_中_cb.Text = "" : 其他_印_cb.Text = ""
  2715. SQL合約項目下拉() : 主名_中_cb.Items.Clear() : 主名_印_cb.Items.Clear()
  2716. While (dr.Read()) : 主名_中_cb.Items.Add(dr("主名_中")) : 主名_印_cb.Items.Add(dr("主名_印")) : End While : conn.Close()
  2717. 項目其他下拉清單讀取()
  2718. End If
  2719. End Sub
  2720. Private Sub 主項_印_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 主項_印_cb.TextChanged
  2721. If 系統語言 <> "繁體中文" Then
  2722. 主項_中_cb.SelectedIndex = 主項_印_cb.SelectedIndex
  2723. PB1 = 主項_中_cb.Text : 其他_中_cb.Text = "" : 其他_印_cb.Text = ""
  2724. SQL合約項目下拉() : 主名_中_cb.Items.Clear() : 主名_印_cb.Items.Clear()
  2725. While (dr.Read()) : 主名_中_cb.Items.Add(dr("主名_中")) : 主名_印_cb.Items.Add(dr("主名_印")) : End While : conn.Close()
  2726. 項目其他下拉清單讀取()
  2727. End If
  2728. End Sub
  2729. Private Sub 主名_中_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 主名_中_cb.TextChanged
  2730. If 系統語言 = "繁體中文" Then
  2731. 主名_印_cb.SelectedIndex = 主名_中_cb.SelectedIndex
  2732. PB1 = 主項_中_cb.Text : PB2 = 主名_中_cb.Text : 其他_中_cb.Text = "" : 其他_印_cb.Text = ""
  2733. SQL合約項目2下拉() : 項名_中_cb.Items.Clear() : 項名_印_cb.Items.Clear()
  2734. While (dr.Read()) : 項名_中_cb.Items.Add(dr("項名_中")) : 項名_印_cb.Items.Add(dr("項名_印")) : End While : conn.Close()
  2735. 項目其他下拉清單讀取() : 合併項目()
  2736. End If
  2737. End Sub
  2738. Private Sub 主名_印_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 主名_印_cb.TextChanged
  2739. If 系統語言 <> "繁體中文" Then
  2740. 主名_中_cb.SelectedIndex = 主名_印_cb.SelectedIndex
  2741. PB1 = 主項_中_cb.Text : PB2 = 主名_中_cb.Text : 其他_中_cb.Text = "" : 其他_印_cb.Text = ""
  2742. SQL合約項目2下拉() : 項名_中_cb.Items.Clear() : 項名_印_cb.Items.Clear()
  2743. While (dr.Read()) : 項名_中_cb.Items.Add(dr("項名_中")) : 項名_印_cb.Items.Add(dr("項名_印")) : End While : conn.Close()
  2744. 項目其他下拉清單讀取() : 合併項目()
  2745. End If
  2746. End Sub
  2747. Private Sub 項名_中_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 項名_中_cb.TextChanged
  2748. If 系統語言 = "繁體中文" Then
  2749. 項名_印_cb.SelectedIndex = 項名_中_cb.SelectedIndex
  2750. 其他_中_cb.Text = "" : 其他_印_cb.Text = "" : 合併項目()
  2751. End If
  2752. End Sub
  2753. Private Sub 項名_印_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 項名_印_cb.TextChanged
  2754. If 系統語言 <> "繁體中文" Then
  2755. 項名_中_cb.SelectedIndex = 項名_印_cb.SelectedIndex
  2756. 其他_中_cb.Text = "" : 其他_印_cb.Text = "" : 合併項目()
  2757. End If
  2758. End Sub
  2759. Private Sub 描述_中_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 描述_中_cb.TextChanged
  2760. If 系統語言 = "繁體中文" Then
  2761. 描述_印_cb.SelectedIndex = 描述_中_cb.SelectedIndex
  2762. 其他_中_cb.Text = "" : 其他_印_cb.Text = "" : 合併項目()
  2763. End If
  2764. End Sub
  2765. Private Sub 描述_印_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 描述_印_cb.TextChanged
  2766. If 系統語言 <> "繁體中文" Then
  2767. 描述_中_cb.SelectedIndex = 描述_印_cb.SelectedIndex
  2768. 其他_中_cb.Text = "" : 其他_印_cb.Text = "" : 合併項目()
  2769. End If
  2770. End Sub
  2771. Private Sub 其他_中_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 其他_中_cb.TextChanged
  2772. If 系統語言 = "繁體中文" Then
  2773. 其他_印_cb.SelectedIndex = 其他_中_cb.SelectedIndex
  2774. 項名_中_cb.Text = "" : 項名_印_cb.Text = "" : 主名_中_cb.Text = "" : 主名_印_cb.Text = "" : 描述_中_cb.Text = "" : 描述_印_cb.Text = "" : 合併項目()
  2775. End If
  2776. End Sub
  2777. Private Sub 其他_印_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 其他_印_cb.TextChanged
  2778. If 系統語言 <> "繁體中文" Then
  2779. 其他_中_cb.SelectedIndex = 其他_印_cb.SelectedIndex
  2780. 項名_中_cb.Text = "" : 項名_印_cb.Text = "" : 主名_中_cb.Text = "" : 主名_印_cb.Text = "" : 描述_中_cb.Text = "" : 描述_印_cb.Text = "" : 合併項目()
  2781. End If
  2782. End Sub
  2783. Private Sub 地點_中_tb_TextChanged(sender As Object, e As EventArgs) Handles 地點_中_tb.TextChanged
  2784. 合併項目()
  2785. End Sub
  2786. Private Sub 地點_印_tb_TextChanged(sender As Object, e As EventArgs) Handles 地點_印_tb.TextChanged
  2787. 合併項目()
  2788. End Sub
  2789. Private Sub 合併項目()
  2790. If 項目_tb.Text = "第一項" Then
  2791. If 地點_印_tb.Text <> "" And 其他_中_cb.Text = "" Then
  2792. 內容1_tb.Text = 地點_印_tb.Text & 主項_中_cb.Text & 描述_中_cb.Text & vbCrLf & 描述_印_cb.Text & " " & 主項_印_cb.Text & " Untuk " & 地點_印_tb.Text
  2793. ElseIf 地點_印_tb.Text = "" And 其他_中_cb.Text = "" Then
  2794. 內容1_tb.Text = 地點_印_tb.Text & 主項_中_cb.Text & 描述_中_cb.Text & vbCrLf & 描述_印_cb.Text & " " & 主項_印_cb.Text
  2795. ElseIf 地點_印_tb.Text <> "" And 其他_中_cb.Text <> "" Then
  2796. 內容1_tb.Text = 地點_印_tb.Text & 其他_中_cb.Text & vbCrLf & 其他_印_cb.Text & " Untuk " & 地點_印_tb.Text
  2797. ElseIf 地點_印_tb.Text = "" And 其他_中_cb.Text <> "" Then
  2798. 內容1_tb.Text = 地點_印_tb.Text & 其他_中_cb.Text & vbCrLf & 其他_印_cb.Text
  2799. End If
  2800. ElseIf 項目_tb.Text = "第二項" Then
  2801. If 描述_中_cb.Text <> "" And 主名_中_cb.Text <> "" And 其他_中_cb.Text = "" And 地點_印_tb.Text <> "" Then
  2802. 內容1_tb.Text = 地點_中_tb.Text & 主名_中_cb.Text & 描述_中_cb.Text & vbCrLf & 描述_印_cb.Text & " " & 主名_印_cb.Text & " Untuk " & 地點_印_tb.Text
  2803. ElseIf 描述_中_cb.Text <> "" And 主名_中_cb.Text <> "" And 其他_中_cb.Text = "" And 地點_印_tb.Text = "" Then
  2804. 內容1_tb.Text = 地點_中_tb.Text & 主名_中_cb.Text & 描述_中_cb.Text & vbCrLf & 描述_印_cb.Text & " " & 主名_印_cb.Text
  2805. ElseIf 描述_中_cb.Text = "" And 主名_中_cb.Text <> "" And 其他_中_cb.Text = "" And 地點_印_tb.Text <> "" Then
  2806. 內容1_tb.Text = 主名_中_cb.Text & 描述_中_cb.Text & vbCrLf & 主名_印_cb.Text & " Untuk " & 地點_印_tb.Text
  2807. ElseIf 描述_中_cb.Text = "" And 主名_中_cb.Text <> "" And 其他_中_cb.Text = "" And 地點_印_tb.Text = "" Then
  2808. 內容1_tb.Text = 主名_中_cb.Text & 描述_中_cb.Text & vbCrLf & 主名_印_cb.Text
  2809. ElseIf 描述_中_cb.Text <> "" And 主名_中_cb.Text = "" And 其他_中_cb.Text <> "" And 地點_印_tb.Text <> "" Then
  2810. 內容1_tb.Text = 地點_中_tb.Text & 其他_中_cb.Text & 描述_中_cb.Text & vbCrLf & 描述_印_cb.Text & " " & 其他_印_cb.Text & " Untuk " & 地點_印_tb.Text
  2811. ElseIf 描述_中_cb.Text <> "" And 主名_中_cb.Text = "" And 其他_中_cb.Text <> "" And 地點_印_tb.Text = "" Then
  2812. 內容1_tb.Text = 地點_中_tb.Text & 其他_中_cb.Text & 描述_中_cb.Text & vbCrLf & 描述_印_cb.Text & " " & 其他_印_cb.Text
  2813. ElseIf 描述_中_cb.Text = "" And 主名_中_cb.Text = "" And 其他_中_cb.Text <> "" And 地點_印_tb.Text <> "" Then
  2814. 內容1_tb.Text = 其他_中_cb.Text & 描述_中_cb.Text & vbCrLf & 其他_印_cb.Text & " Untuk " & 地點_印_tb.Text
  2815. ElseIf 描述_中_cb.Text = "" And 主名_中_cb.Text = "" And 其他_中_cb.Text <> "" And 地點_印_tb.Text = "" Then
  2816. 內容1_tb.Text = 其他_中_cb.Text & 描述_中_cb.Text & vbCrLf & 其他_印_cb.Text
  2817. End If
  2818. ElseIf 項目_tb.Text = "第三項" Then
  2819. If 描述_中_cb.Text <> "" And 項名_中_cb.Text <> "" And 其他_中_cb.Text = "" And 地點_印_tb.Text <> "" Then
  2820. 內容1_tb.Text = 地點_中_tb.Text & 項名_中_cb.Text & 描述_中_cb.Text & vbCrLf & 描述_印_cb.Text & " " & 項名_印_cb.Text & " Untuk " & 地點_印_tb.Text
  2821. ElseIf 描述_中_cb.Text <> "" And 項名_中_cb.Text <> "" And 其他_中_cb.Text = "" And 地點_印_tb.Text = "" Then
  2822. 內容1_tb.Text = 地點_中_tb.Text & 項名_中_cb.Text & 描述_中_cb.Text & vbCrLf & 描述_印_cb.Text & " " & 項名_印_cb.Text
  2823. ElseIf 描述_中_cb.Text = "" And 項名_中_cb.Text <> "" And 其他_中_cb.Text = "" And 地點_印_tb.Text <> "" Then
  2824. 內容1_tb.Text = 地點_中_tb.Text & 項名_中_cb.Text & 描述_中_cb.Text & vbCrLf & 項名_印_cb.Text & " Untuk " & 地點_印_tb.Text
  2825. ElseIf 描述_中_cb.Text = "" And 項名_中_cb.Text <> "" And 其他_中_cb.Text = "" And 地點_印_tb.Text = "" Then
  2826. 內容1_tb.Text = 地點_中_tb.Text & 項名_中_cb.Text & 描述_中_cb.Text & vbCrLf & 項名_印_cb.Text
  2827. ElseIf 其他_中_cb.Text <> "" And 地點_印_tb.Text <> "" Then
  2828. 內容1_tb.Text = 地點_中_tb.Text & 其他_中_cb.Text & vbCrLf & 其他_印_cb.Text & " Untuk " & 地點_印_tb.Text
  2829. ElseIf 其他_中_cb.Text <> "" And 地點_印_tb.Text = "" Then
  2830. 內容1_tb.Text = 地點_中_tb.Text & 其他_中_cb.Text & vbCrLf & 其他_印_cb.Text
  2831. End If
  2832. End If
  2833. End Sub
  2834. '-----------------合約係數功能-------------------------------------------------------------------------------------------------------------------------------
  2835. Private Sub 係數範本_tb_Click(sender As Object, e As EventArgs) Handles 係數範本_tb.Click
  2836. OY2 = 報價明細表_dgv.Size.Height
  2837. If OX1 = 報價係數_dgv.Size.Width And OY1 = 報價係數_dgv.Size.Height Then
  2838. 報價係數_dgv.Size = New System.Drawing.Point(OX1, OY1 + OY2) : 報價係數_dgv.Columns(3).ReadOnly = False : 報價明細表_dgv_自動計算() : 報價總表_dgv_自動計算()
  2839. Else : 報價係數_dgv.Size = New System.Drawing.Point(OX1, OY1) : 報價係數_dgv.Columns(3).ReadOnly = True : 報價明細表_dgv_自動計算() : 報價總表_dgv_自動計算() : End If
  2840. End Sub
  2841. Private Sub 編輯係數_bt_Click(sender As Object, e As EventArgs) Handles 係數存檔_bt.Click
  2842. For i As Integer = 0 To 報價係數_dgv.Rows.Count - 1 : PA = 報價單合約編號_tb.Text
  2843. PA1 = 報價係數_dgv.Rows(i).Cells("流水號").Value.ToString() : PA2 = 報價係數_dgv.Rows(i).Cells("係數").Value.ToString()
  2844. PA3 = 報價係數_dgv.Rows(i).Cells("單位").Value.ToString() : SQL_合約報價係數修改()
  2845. Next : MGB(系統語言字典("H402-120-" & 語言), 1) : 工資與材料系數清單() : 報價明細表_dgv_自動計算() : 報價總表_dgv_自動計算()
  2846. End Sub
  2847. Private Sub 係數流水號()
  2848. SQL_合約報價係數_最後一筆資料()
  2849. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("流水號").ToString, 9)) : Else : EDR = 0 : End If
  2850. conn.Close() : EDR += 1
  2851. If EDR < 10 Then : ESTR = "CF" & "00000000" & EDR : ElseIf EDR > 9 And EDR < 100 Then : ESTR = "CF" & "0000000" & EDR
  2852. ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "CF" & "000000" & EDR : ElseIf EDR > 999 And EDR < 10000 Then : ESTR = "CF" & "00000" & EDR
  2853. ElseIf EDR > 9999 And EDR < 100000 Then : ESTR = "CF" & "0000" & EDR : ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "CF" & "000" & EDR
  2854. ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "CF" & "00" & EDR : ElseIf EDR > 9999999 And EDR < 10000000 Then : ESTR = "CF" & "0" & EDR
  2855. ElseIf EDR > 99999999 Then : ESTR = "CF" & EDR : End If
  2856. PA1 = ESTR
  2857. End Sub
  2858. '-----------------合約試算表功能-------------------------------------------------------------------------------------------------------------------------------
  2859. Private Sub 試算表_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 試算表_cb.SelectedIndexChanged
  2860. PA = 合約編號_tb.Text : PA2 = 表號_tb.Text : PA3 = 試算表_cb.Text : SQL_合約試算分表重複查詢()
  2861. If dr.Read() Then : 係數_nud.Value = dr("係數") : 表號_tb.Text = dr("表號").ToString : End If : 合約試算控制下拉清單()
  2862. End Sub
  2863. Private Sub 試算表_cb_Click(sender As Object, e As EventArgs) Handles 試算表_cb.Click
  2864. CB選擇清單(試算表_cb, 試算表_cb.Text)
  2865. End Sub
  2866. Private Sub 樓層_迴路_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 樓層_迴路_cb.SelectedIndexChanged
  2867. PA = 合約編號_tb.Text : PA2 = 表號_tb.Text : PA4 = 樓層_迴路_cb.Text : SQL_合約試算控制表重複查詢() : If dr.Read() Then : 表頭_tb.Text = dr("表頭") : End If
  2868. End Sub
  2869. Private Sub 樓層_迴路_cb_Click(sender As Object, e As EventArgs) Handles 樓層_迴路_cb.Click
  2870. CB選擇清單(樓層_迴路_cb, 樓層_迴路_cb.Text)
  2871. End Sub
  2872. Private Sub 表號_tb_TextChanged(sender As Object, e As EventArgs) Handles 表號_tb.TextChanged
  2873. PA = 合約編號_tb.Text : PA2 = 表號_tb.Text : Set_合約試算控制表_查詢()
  2874. End Sub
  2875. Private Sub 新增試算表_bt_Click(sender As Object, e As EventArgs) Handles 新增試算表_bt.Click
  2876. If 合約編號_tb.Text = "" Then : MGB(系統語言字典("H115-122-" & 語言), 1) : Else
  2877. PA = 合約編號_tb.Text : PA3 = 試算表_cb.Text : SQL_合約試算分表重複查詢()
  2878. If dr.Read() Then : MGB(系統語言字典("H102-140-" & 語言), 1) : Else
  2879. '------生成表號---------------------------------------------------------------------------------------
  2880. Dim 表號 As String : PA = 合約編號_tb.Text
  2881. conn.Close() : SQL_合約試算分表_最後一筆資料()
  2882. If dr.Read() Then : 表號 = dr("表號").ToString : Else : 表號 = "B00" : End If : conn.Close()
  2883. Dim NUM1 As Integer
  2884. NUM1 = Double.Parse(Strings.Right(表號, 2)) + 1
  2885. If NUM1 < 10 Then : 表號 = "B" & "0" & NUM1
  2886. ElseIf NUM1 > 9 And NUM1 < 100 Then : 表號 = "B" & NUM1 : End If
  2887. '------新增試算表---------------------------------------------------------------------------------------
  2888. 表號_tb.Text = 表號 : PA1 = 試算表_cb.Text : PA2 = 表號_tb.Text : SQL_合約試算分表_新增()
  2889. '------重新載入下拉清單---------------------------------------------------------------------------------------
  2890. 合約試算分下拉清單() : MGB(系統語言字典("G000-118-" & 語言), 1)
  2891. End If : conn.Close()
  2892. End If
  2893. End Sub
  2894. Private Sub 修改試算表名稱_bt_Click(sender As Object, e As EventArgs) Handles 修改試算表名稱_bt.Click
  2895. PA = 合約編號_tb.Text : PA3 = 試算表_cb.Text : SQL_合約試算分表重複查詢()
  2896. If dr.Read() Then : MGB(系統語言字典("H102-140-" & 語言), 1) : Else
  2897. PA = 合約編號_tb.Text : PA1 = 試算表_cb.Text : PA2 = 表號_tb.Text : SQL_合約試算分表_試算表修改()
  2898. '------重新載入下拉清單---------------------------------------------------------------------------------------
  2899. 合約試算分下拉清單() : MGB(系統語言字典("H299-128-" & 語言), 1)
  2900. End If : conn.Close()
  2901. End Sub
  2902. Private Sub 新增物件_bt_Click(sender As Object, e As EventArgs) Handles 新增物件_bt.Click
  2903. If 試算控制表_dgv.Rows.Count = 40 Then : MGB(系統語言字典("H102-141-" & 語言), 1) : Else
  2904. If 合約編號_tb.Text = "" Then : MGB(系統語言字典("H115-122-" & 語言), 1) : Else
  2905. PA = 合約編號_tb.Text : PA2 = 表號_tb.Text : PA4 = 樓層_迴路_cb.Text : SQL_合約試算控制表重複查詢()
  2906. If dr.Read() Then : MGB(系統語言字典("H102-140-" & 語言), 1) : Else
  2907. '------生成表號---------------------------------------------------------------------------------------
  2908. Dim 表頭 As String : PA = 合約編號_tb.Text : PA2 = 表號_tb.Text
  2909. conn.Close() : SQL_合約試算控制表_最後一筆資料()
  2910. If dr.Read() Then : 表頭 = dr("表頭").ToString : Else : 表頭 = "A00" : End If : conn.Close()
  2911. Dim NUM1 As Integer
  2912. NUM1 = Double.Parse(Strings.Right(表頭, 2)) + 1
  2913. If NUM1 < 10 Then : 表頭 = "A" & "0" & NUM1
  2914. ElseIf NUM1 > 9 And NUM1 < 100 Then : 表頭 = "A" & NUM1 : End If
  2915. '------新增試算表---------------------------------------------------------------------------------------
  2916. 表頭_tb.Text = 表頭 : PA4 = 樓層_迴路_cb.Text : PA2 = 表號_tb.Text : PA5 = 表頭_tb.Text : SQL_合約試算控制表_新增()
  2917. '------重新載入下拉清單---------------------------------------------------------------------------------------
  2918. 合約試算控制下拉清單() : Set_合約試算控制表_查詢() : MGB(系統語言字典("G000-118-" & 語言), 1)
  2919. End If : conn.Close()
  2920. End If
  2921. End If
  2922. End Sub
  2923. Private Sub 修改樓層_迴圈_bt_Click(sender As Object, e As EventArgs) Handles 修改樓層_迴圈_bt.Click
  2924. PA = 合約編號_tb.Text : PA2 = 表號_tb.Text : PA4 = 樓層_迴路_cb.Text : SQL_合約試算控制表重複查詢()
  2925. If dr.Read() Then : MGB(系統語言字典("H102-140-" & 語言), 1) : Else
  2926. PA = 合約編號_tb.Text : PA2 = 表號_tb.Text : PA4 = 樓層_迴路_cb.Text : PA5 = 表頭_tb.Text : SQL_合約試算控制表_樓層迴路修改()
  2927. '------重新載入下拉清單---------------------------------------------------------------------------------------
  2928. 合約試算控制下拉清單() : Set_合約試算控制表_查詢() : MGB(系統語言字典("H299-128-" & 語言), 1)
  2929. End If : conn.Close()
  2930. End Sub
  2931. Private Sub 材料加入1_bt_Click(sender As Object, e As EventArgs) Handles 材料加入1_bt.Click
  2932. If 合約編號_tb.Text = "" Then : MGB(系統語言字典("H115-122-" & 語言), 1) : Else
  2933. If 樓層_迴路_cb.Text = "" Then : MGB(系統語言字典("H102-142-" & 語言), 1) : Else
  2934. If 料號1_tb.Text = "" Then : MGB(系統語言字典("H527-178-" & 語言), 1) : Else
  2935. 存檔() : PA = 合約編號_tb.Text : PA2 = 表號_tb.Text : PA6 = 料號1_tb.Text : SQL_合約試算明細表重複查詢()
  2936. If dr.Read() Then : MGB(系統語言字典("H102-143-" & 語言), 1) : Else : SQL_合約試算明細表_新增物料() : Set_試算明細表() : End If
  2937. End If
  2938. End If
  2939. End If
  2940. End Sub
  2941. Private Sub 直接輸入_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 直接輸入_ch.Click
  2942. 直接輸入_ch.Checked = True : 使用計算機_ch.Checked = False
  2943. If 直接輸入_ch.Checked = False And 使用計算機_ch.Checked = True Then : 試算表_dgv.EditMode = DataGridViewEditMode.EditOnF2
  2944. Else : 試算表_dgv.EditMode = DataGridViewEditMode.EditOnEnter : End If
  2945. End Sub
  2946. Private Sub 使用計算機_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 使用計算機_ch.Click
  2947. 直接輸入_ch.Checked = False : 使用計算機_ch.Checked = True
  2948. If 直接輸入_ch.Checked = False And 使用計算機_ch.Checked = True Then : 試算表_dgv.EditMode = DataGridViewEditMode.EditOnF2
  2949. Else : 試算表_dgv.EditMode = DataGridViewEditMode.EditOnEnter : End If
  2950. End Sub
  2951. Private Sub 存檔()
  2952. If 合約編號_tb.Text = "" Or 表號_tb.Text = "" Then : MGB(系統語言字典("H115-122-" & 語言), 1) : Else
  2953. PA = 合約編號_tb.Text : PA1 = 表號_tb.Text
  2954. For i As Integer = 0 To 試算表_dgv.Rows.Count - 1
  2955. PA43 = 試算表_dgv.Rows(i).Cells(0).Value : PA2 = 試算表_dgv.Rows(i).Cells(3).Value : PA3 = 試算表_dgv.Rows(i).Cells(4).Value : PA4 = 試算表_dgv.Rows(i).Cells(5).Value
  2956. PA5 = 試算表_dgv.Rows(i).Cells(6).Value : PA6 = 試算表_dgv.Rows(i).Cells(7).Value : PA7 = 試算表_dgv.Rows(i).Cells(8).Value : PA8 = 試算表_dgv.Rows(i).Cells(9).Value
  2957. PA9 = 試算表_dgv.Rows(i).Cells(10).Value : PA10 = 試算表_dgv.Rows(i).Cells(11).Value : PA11 = 試算表_dgv.Rows(i).Cells(12).Value : PA12 = 試算表_dgv.Rows(i).Cells(13).Value
  2958. PA13 = 試算表_dgv.Rows(i).Cells(14).Value : PA14 = 試算表_dgv.Rows(i).Cells(15).Value : PA15 = 試算表_dgv.Rows(i).Cells(16).Value : PA16 = 試算表_dgv.Rows(i).Cells(17).Value
  2959. PA17 = 試算表_dgv.Rows(i).Cells(18).Value : PA18 = 試算表_dgv.Rows(i).Cells(19).Value : PA19 = 試算表_dgv.Rows(i).Cells(20).Value : PA20 = 試算表_dgv.Rows(i).Cells(21).Value
  2960. PA21 = 試算表_dgv.Rows(i).Cells(22).Value : PA22 = 試算表_dgv.Rows(i).Cells(23).Value : PA23 = 試算表_dgv.Rows(i).Cells(24).Value : PA24 = 試算表_dgv.Rows(i).Cells(25).Value
  2961. PA25 = 試算表_dgv.Rows(i).Cells(26).Value : PA26 = 試算表_dgv.Rows(i).Cells(27).Value : PA27 = 試算表_dgv.Rows(i).Cells(28).Value : PA28 = 試算表_dgv.Rows(i).Cells(29).Value
  2962. PA29 = 試算表_dgv.Rows(i).Cells(30).Value : PA30 = 試算表_dgv.Rows(i).Cells(31).Value : PA31 = 試算表_dgv.Rows(i).Cells(32).Value : PA32 = 試算表_dgv.Rows(i).Cells(33).Value
  2963. PA33 = 試算表_dgv.Rows(i).Cells(34).Value : PA34 = 試算表_dgv.Rows(i).Cells(35).Value : PA35 = 試算表_dgv.Rows(i).Cells(36).Value : PA36 = 試算表_dgv.Rows(i).Cells(37).Value
  2964. PA37 = 試算表_dgv.Rows(i).Cells(38).Value : PA38 = 試算表_dgv.Rows(i).Cells(39).Value : PA39 = 試算表_dgv.Rows(i).Cells(40).Value : PA40 = 試算表_dgv.Rows(i).Cells(41).Value
  2965. PA41 = 試算表_dgv.Rows(i).Cells(42).Value : BL1 = 試算表_dgv.Rows(i).Cells(43).Value : PA42 = 試算表_dgv.Rows(i).Cells(44).Value
  2966. SQL_合約試算明細表_修改()
  2967. Next i
  2968. End If
  2969. End Sub
  2970. Private Sub 存檔_bt_Click(sender As Object, e As EventArgs) Handles 存檔_bt.Click
  2971. 存檔() : MGB(系統語言字典("H204-133-" & 語言), 1)
  2972. End Sub
  2973. Private Sub 搜尋_bt_Click(sender As Object, e As EventArgs) Handles 搜尋_bt.Click
  2974. INB(系統語言字典("H402-123-" & 語言)) : PA = 訊息回應
  2975. If PA = "" Then : Else : Set_DGV1載入前設定() : SQL_建築物料請購單申請_物料清單三() : Set_DG1載入後設定() : 料號1_tb.Text = "" : End If
  2976. End Sub
  2977. Private Sub 刪除1_bt_Click(sender As Object, e As EventArgs) Handles 刪除1_bt.Click
  2978. MGB(系統語言字典("H402-121-" & 語言), 2)
  2979. If 訊息回應 = "YES" Then
  2980. PA = 合約編號_tb.Text : PA1 = 表號_tb.Text : PA43 = 料號1_tb.Text : PA2 = 表號_tb.Text
  2981. SQL_合約試算明細表_刪除() : MGB(系統語言字典("H402-122-" & 語言), 1) : Set_試算明細表()
  2982. End If
  2983. End Sub
  2984. '-----------------預估利潤存檔-------------------------------------------------------------------------------------------------------------------------------
  2985. Private Sub 預估利潤存檔()
  2986. 'Or 預估利潤_tb.Text = "0" Or 利潤比3_tb.Text = "0 %"
  2987. If 預估利潤_tb.Text = "" Then
  2988. Else
  2989. If 預估工資總成本_tb.Text = "" Then : 預估工資總成本_tb.Text = "0" : End If
  2990. If 預估工資總報價_tb.Text = "" Then : 預估工資總報價_tb.Text = "0" : End If
  2991. If 利潤比1_tb.Text = "" Then : 利潤比1_tb.Text = "0 %" : End If
  2992. If 預估材料總成本_tb.Text = "" Then : 預估材料總成本_tb.Text = "0" : End If
  2993. If 預估材料總報價_tb.Text = "" Then : 預估材料總報價_tb.Text = "0" : End If
  2994. If 利潤比2_tb.Text = "" Then : 利潤比2_tb.Text = "0 %" : End If
  2995. If 總成本_tb.Text = "" Then : 總成本_tb.Text = "0" : End If
  2996. If 總報價_tb.Text = "" Then : 總報價_tb.Text = "0" : End If
  2997. If 利潤比3_tb.Text = "" Then : 利潤比3_tb.Text = "0 %" : End If
  2998. If 利潤比4_tb.Text = "" Then : 利潤比4_tb.Text = "0 %" : End If
  2999. If 預估利潤_tb.Text = "" Then : 預估利潤_tb.Text = "0" : End If
  3000. PA37 = 預估工資總成本_tb.Text : PA38 = 預估工資總報價_tb.Text : PA39 = Replace(Replace(利潤比1_tb.Text, " ", ""), "%", "")
  3001. PA40 = 預估材料總成本_tb.Text : PA41 = 預估材料總報價_tb.Text : PA42 = Replace(Replace(利潤比2_tb.Text, " ", ""), "%", "") : PA47 = 預估利潤_tb.Text
  3002. PA43 = 總成本_tb.Text : PA44 = 總報價_tb.Text : PA45 = Replace(Replace(利潤比3_tb.Text, " ", ""), "%", "") : PA46 = Replace(Replace(利潤比4_tb.Text, " ", ""), "%", "")
  3003. SQL_合約控制表預估利潤存檔()
  3004. End If
  3005. End Sub
  3006. '---------------------其他雜項功能--------------------------------------------------------------------------------------------------------------------------
  3007. Private Sub 彙總存檔_bt_Click(sender As Object, e As EventArgs) Handles 彙總存檔_bt.Click
  3008. PA = 合約編號_tb.Text : 預估利潤存檔() : MGB(系統語言字典("G000-119-" & 語言), 1)
  3009. End Sub
  3010. Private Sub ITEM4_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ITEM4_cb.Click
  3011. PPCC = ITEM4_cb.Text : 合約報價單項次選擇.ShowDialog()
  3012. If IsNumeric(PPAA) = True Then : MGB("這裡只能選擇中文數字,不能選擇阿拉伯數字!!", 1) : Else : ITEM4_cb.Text = PPAA : End If
  3013. End Sub
  3014. Private Sub 物料_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 物料_ch.Click
  3015. 物料_ch.Checked = True : BOM_ch.Checked = False : 合約_ch.Checked = False : 物料_p.Visible = True : BOM_p.Visible = False : 合約_p.Visible = False
  3016. If 切換_ts.Value = True Then : 新式_P.Visible = True : 新式_P.BringToFront() : 主頁_p.BringToFront() : Else : 新式_P.Visible = False : End If
  3017. End Sub
  3018. Private Sub BOM_ch_CheckedChanged(sender As Object, e As EventArgs) Handles BOM_ch.Click
  3019. 物料_ch.Checked = False : BOM_ch.Checked = True : 合約_ch.Checked = False : 物料_p.Visible = False : BOM_p.Visible = True : 合約_p.Visible = False
  3020. End Sub
  3021. Private Sub 合約_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 合約_ch.Click
  3022. 物料_ch.Checked = False : BOM_ch.Checked = False : 合約_ch.Checked = True : 物料_p.Visible = False : BOM_p.Visible = False : 合約_p.Visible = True
  3023. End Sub
  3024. Private Sub 合約編號1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 合約編號1_cb.SelectedIndexChanged
  3025. 條件選擇 = 合約編號1_cb.Text : Set_合約清單()
  3026. End Sub
  3027. Private Sub 工程期1_ch_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 工程期1_ch.SelectedIndexChanged
  3028. 條件選擇 = 合約編號1_cb.Text : Set_合約清單()
  3029. End Sub
  3030. Private Sub 規格顯示修改_bt_Click(sender As Object, e As EventArgs) Handles 規格顯示修改_bt.Click
  3031. 利潤表_ch.Checked = False : Set_報價明細表_dgv_利潤表關閉()
  3032. If 報價明細表_dgv.Columns(43).Visible = False Then : For I As Integer = 43 To 50 : 報價明細表_dgv.Columns(I).Visible = True : Next
  3033. ElseIf 報價明細表_dgv.Columns(43).Visible = True Then : For I As Integer = 43 To 50 : 報價明細表_dgv.Columns(I).Visible = False : Next : End If
  3034. Set_合約報價明細表格式()
  3035. End Sub
  3036. Private Sub 單位1_tb_TextChanged(sender As Object, e As EventArgs) Handles 單位1_tb.Click
  3037. CB選擇清單(單位_cb, 單位1_tb.Text) : 單位1_tb.Text = 單位_cb.Text
  3038. End Sub
  3039. Private Sub 單位_tb_TextChanged(sender As Object, e As EventArgs) Handles 單位_tb.Click
  3040. CB選擇清單(單位_cb, 單位_tb.Text) : 單位_tb.Text = 單位_cb.Text
  3041. End Sub
  3042. Private Sub 合約編號清單_bt_Click(sender As Object, e As EventArgs) Handles 合約編號清單_bt.Click
  3043. If 合約_dgv.Rows.Count > 2999 Then : MGB(系統語言字典("G000-153-" & 語言), 1) : Else
  3044. For I As Integer = 0 To 3000 : PPBB(I) = "" : Next
  3045. For I As Integer = 0 To 合約_dgv.Rows.Count - 1 : PPBB(I) = 合約_dgv(表頭(7), I).Value.ToString : NN1 = I : Next
  3046. 下拉清單_1.ShowDialog()
  3047. For I As Integer = 0 To 合約_dgv.Rows.Count - 1 : If PPAA = 合約_dgv(表頭(7), I).Value.ToString Then : 選取位置 = I : Exit For : End If : Next : 合約讀取()
  3048. End If
  3049. End Sub
  3050. Private Sub 縮放_bt_Click_1(sender As Object, e As EventArgs) Handles 縮放_bt.Click
  3051. If 空間1.Visible = True Then
  3052. A3 = 空間2.Size.Width : B3 = 空間2.Size.Height
  3053. 空間1.Visible = False : 空間2.Location = New System.Drawing.Point(3, 0) : 空間2.Size = New System.Drawing.Point(A3 + 空間1.Size.Width, B3)
  3054. Else
  3055. A3 = 空間2.Size.Width : B3 = 空間2.Size.Height
  3056. 空間1.Visible = True : 空間2.Location = New System.Drawing.Point(空間1.Size.Width, 0) : 空間2.Size = New System.Drawing.Point(A3 - 空間1.Size.Width, B3)
  3057. If 物料_ch.Checked = True Then : 物料_p.Visible = True : BOM_p.Visible = False : 合約_p.Visible = False
  3058. ElseIf BOM_ch.Checked = True Then : 物料_p.Visible = False : BOM_p.Visible = True : 合約_p.Visible = False
  3059. ElseIf 合約_ch.Checked = True Then : 物料_p.Visible = False : BOM_p.Visible = False : 合約_p.Visible = True : End If
  3060. End If
  3061. End Sub
  3062. Private Sub 新建_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 新建_ch.Click
  3063. 新建_ch.Checked = True : 改版_ch.Checked = False : 轉移_ch.Checked = False
  3064. 合約編號_n_cb.Text = "" : 合約編號1_n_tb.Text = "" : 合約編號2_n_tb.Text = "" : 合約編號3_n_tb.Text = ""
  3065. 合約編號_n_cb.Enabled = True : 合約編號1_n_tb.Enabled = True : 合約編號2_n_tb.Enabled = True
  3066. If 深色風格 = False Then
  3067. 新建_ch.ForeColor = Color.Red : 改版_ch.ForeColor = Color.Black : 轉移_ch.ForeColor = Color.Black
  3068. Else
  3069. 新建_ch.ForeColor = Color.LightPink : 改版_ch.ForeColor = Color.White : 轉移_ch.ForeColor = Color.White
  3070. End If
  3071. End Sub
  3072. Private Sub 改版_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 改版_ch.Click
  3073. 新建_ch.Checked = False : 改版_ch.Checked = True : 轉移_ch.Checked = False
  3074. 合約編號_o_cb.Text = 合約編號_cb.Text : 合約編號_n_cb.Text = 合約編號_cb.Text : 合約編號1_o_tb.Text = 合約編號1_tb.Text : 合約編號1_n_tb.Text = 合約編號1_tb.Text
  3075. 合約編號2_o_tb.Text = 合約編號2_tb.Text : 合約編號2_n_tb.Text = 合約編號2_tb.Text : 合約編號3_o_tb.Text = 合約編號3_tb.Text : 合約編號3_n_tb.Text = ""
  3076. 合約編號_n_cb.Enabled = False : 合約編號1_n_tb.Enabled = False : 合約編號2_n_tb.Enabled = True
  3077. If 深色風格 = False Then
  3078. 新建_ch.ForeColor = Color.Black : 改版_ch.ForeColor = Color.Red : 轉移_ch.ForeColor = Color.Black
  3079. Else
  3080. 新建_ch.ForeColor = Color.White : 改版_ch.ForeColor = Color.LightPink : 轉移_ch.ForeColor = Color.White
  3081. End If
  3082. End Sub
  3083. Private Sub 轉移_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 轉移_ch.Click
  3084. 新建_ch.Checked = False : 改版_ch.Checked = False : 轉移_ch.Checked = True
  3085. 合約編號_o_cb.Text = 合約編號_cb.Text : 合約編號_n_cb.Text = 合約編號_cb.Text : 合約編號1_o_tb.Text = 合約編號1_tb.Text : 合約編號1_n_tb.Text = 合約編號1_tb.Text
  3086. 合約編號2_o_tb.Text = 合約編號2_tb.Text : 合約編號2_n_tb.Text = 合約編號2_tb.Text : 合約編號3_o_tb.Text = 合約編號3_tb.Text : 合約編號3_n_tb.Text = ""
  3087. 合約編號_n_cb.Enabled = False : 合約編號1_n_tb.Enabled = False : 合約編號2_n_tb.Enabled = True
  3088. If 深色風格 = False Then
  3089. 新建_ch.ForeColor = Color.Black : 改版_ch.ForeColor = Color.Black : 轉移_ch.ForeColor = Color.Red
  3090. Else
  3091. 新建_ch.ForeColor = Color.White : 改版_ch.ForeColor = Color.White : 轉移_ch.ForeColor = Color.LightPink
  3092. End If
  3093. End Sub
  3094. Private Sub 啟用批量出貨_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 啟用批量選擇_ch.Click
  3095. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1 : 報價明細表_dgv.Rows(i).Cells(表頭(10)).Value = False : Next
  3096. End Sub
  3097. Private Sub 查閱文件_bt_Click(sender As Object, e As EventArgs) Handles 查閱文件_bt.Click
  3098. If 合約編號_tb.Text = "" Then : MGB(系統語言字典("H115-122-" & 語言), 1) : Else
  3099. If 簽回檔 = False Then : MGB(系統語言字典("H106-111-" & 語言), 1) : Else
  3100. PA1 = 合約編號_tb.Text : PA2 = "報價" : 文件查閱視窗.ShowDialog()
  3101. End If
  3102. End If
  3103. End Sub
  3104. Private Sub 詳細資料1_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 詳細資料1_ch.Click
  3105. If 詳細資料1_ch.Checked = True Then : 詳細資料1_ch.Checked = True : Else : 詳細資料1_ch.Checked = False : End If : Set_BOM表明細()
  3106. End Sub
  3107. Private Sub 詳細資料_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 詳細資料_ch.Click
  3108. If 詳細資料_ch.Checked = True Then : 詳細資料_ch.Checked = True : Else : 詳細資料_ch.Checked = False : End If : Set_合約報價明細表1()
  3109. End Sub
  3110. Private Sub 詳細資料2_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 詳細資料2_ch.Click
  3111. If 詳細資料2_ch.Checked = True Then : 詳細資料2_ch.Checked = True : Else : 詳細資料2_ch.Checked = False : End If : Set_合約報價明細表()
  3112. End Sub
  3113. Private Sub 詳細資料3_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 詳細資料3_ch.Click
  3114. If 詳細資料3_ch.Checked = True Then : 詳細資料3_ch.Checked = True : Else : 詳細資料3_ch.Checked = False : End If : Set_試算明細表()
  3115. End Sub
  3116. Private Sub 縮放1_bt_Click(sender As Object, e As EventArgs) Handles 縮放1_bt.Click
  3117. If 合約_dgv.Visible = True Then
  3118. AA3 = 空間3.Size.Width : BB3 = 空間3.Size.Height : 合約_dgv.Visible = False
  3119. AA5 = 總表空間_P.Size.Width : BB5 = 總表空間_P.Size.Height
  3120. If 不再動作1 = False Then
  3121. 空間3.Location = New System.Drawing.Point(AA1, BB2) : 空間3.Size = New System.Drawing.Point((AA2 - AA1) + AA3, BB3)
  3122. 總表空間_P.Location = New System.Drawing.Point(AA1 + 基本資料_P.Size.Width, BB4) : 總表空間_P.Size = New System.Drawing.Point((AA2 - AA1) + AA5, BB5)
  3123. End If
  3124. Else
  3125. 合約_dgv.Visible = True
  3126. If 不再動作1 = False Then
  3127. 空間3.Location = New System.Drawing.Point(AA2, BB2) : 空間3.Size = New System.Drawing.Point(AA3, BB3)
  3128. 總表空間_P.Location = New System.Drawing.Point(AA2 + 基本資料_P.Size.Width, BB4) : 總表空間_P.Size = New System.Drawing.Point(AA5, BB5)
  3129. End If
  3130. End If
  3131. End Sub
  3132. Private Sub 縮放2_bt_Click(sender As Object, e As EventArgs) Handles 縮放2_bt.Click
  3133. Dim NX, NY As Integer : NX = 合約_dgv.Size.Width : NY = 合約_dgv.Size.Height
  3134. If 合約_dgv.Visible = False Then : 縮放1_bt.PerformClick() : End If
  3135. If 放大 = True Then
  3136. 合約_dgv.Size = New System.Drawing.Point(NX - 400, NY) : 放大 = False
  3137. 合約_dgv.Columns(表頭(8)).Visible = False : 合約_dgv.Columns("審核通過").Visible = False : 合約_dgv.Columns("停止").Visible = False
  3138. Else
  3139. 合約_dgv.Size = New System.Drawing.Point(NX + 400, NY) : 放大 = True
  3140. 合約_dgv.Columns(表頭(8)).Visible = True : 合約_dgv.Columns("審核通過").Visible = True : 合約_dgv.Columns("停止").Visible = True
  3141. End If
  3142. End Sub
  3143. Private Sub 合約作廢_bt_Click(sender As Object, e As EventArgs) Handles 合約作廢_bt.Click
  3144. If 合約編號_tb.Text = "" Then : MGB(系統語言字典("H115-122-" & 語言), 1) : Else
  3145. Dim 是否作廢 As Boolean : PA = 合約編號_tb.Text : SQL_合約作廢查詢()
  3146. If dr.Read Then : If dr("作廢") = False Then : 是否作廢 = False : Else : 是否作廢 = True : End If : End If
  3147. If 是否作廢 = False Then : MGB(系統語言字典("H102-144-" & 語言), 2) : Else : MGB(系統語言字典("H102-145-" & 語言), 2) : End If
  3148. If 訊息回應 = "YES" Then : If 是否作廢 = False Then : PA1 = "1" : Else : PA1 = "0" : End If : SQL_合約作廢查詢修改() : Set_合約清單() : End If
  3149. End If
  3150. End Sub
  3151. Private Sub 發送_bt_Click(sender As Object, e As EventArgs) Handles 發送_bt.Click
  3152. If 合約編號_tb.Text = "" Then : MGB(系統語言字典("H115-122-" & 語言), 1) : Else
  3153. MGB(系統語言字典("H102-146-" & 語言), 2)
  3154. If 訊息回應 = "YES" Then
  3155. PA37 = 合約種類_cb.Text : PA36 = 合約種類_tb.Text : PA = 合約編號_tb.Text
  3156. PA36 = 客戶名稱_tb.Text : PA35 = 負責人_A_cb.Text : PA34 = 工程地點_tb.Text : PA33 = 客戶地址_tb.Text : PA32 = 工程名稱_中_tb.Text : PA31 = 工程名稱_英_tb.Text
  3157. PA30 = 選擇公司_cb.Text : PA29 = 負責人_B_cb.Text : PA28 = 我司地址_tb.Text : PA27 = NUD3.Value : PA26 = 工程款1_nud.Value : PA25 = 工程款2_nud.Value
  3158. PA24 = 工程款3_nud.Value : PA23 = 工程款4_nud.Value : PA22 = 工程款5_nud.Value : PA21 = 工期_nud.Value : PA20 = 逾期_bt.Text : PA19 = 最高扣款_bt.Text
  3159. PA18 = 逾期_英_bt.Text : PA17 = 最高扣款_英_bt.Text : PA16 = 減價_bt.Text : PA15 = 廠區_中文_tb.Text : PA14 = 頁數_bt.Text : PA12 = 合約種類_cb.Text
  3160. PA13 = Strings.Format(立約日期_dtp.Value, "yyyy/MM/dd") : PA44 = 合約編號2_tb.Text : PA45 = 合約編號3_tb.Text : PA46 = 合約編號1_tb.Text : PA47 = 工程期_ch.Text
  3161. BL1 = False : PA10 = 折讓比例_nud.Value : PA9 = 歸零位數_nud.Value : BL2 = 稅前歸零_ch.Checked : BL3 = 稅後歸零_ch.Checked
  3162. If 美金_ch.Checked = True Then : PA11 = "美金" : ElseIf 台幣_ch.Checked = True Then : PA11 = "台幣"
  3163. ElseIf 人民幣_ch.Checked = True Then : PA11 = "人民幣" : ElseIf 印尼盾_ch.Checked = True Then : PA11 = "印尼盾" : End If
  3164. 匯率() : PA48 = 匯率1 : SQL_合約修改1()
  3165. '---LINE_AUTO 部門主管------------------------------------------------------------------------------------------------------------------------------------------
  3166. If 登入人IP = 測試IP Then : Else
  3167. LIN訊息通知("CC201", "李協叡", 合約編號_tb.Text & " ][ " & 工程名稱_中_tb.Text)
  3168. LIN訊息通知("CC201", "LIN HSING HAO", 合約編號_tb.Text & " ][ " & 工程名稱_中_tb.Text)
  3169. End If
  3170. End If
  3171. End If
  3172. End Sub
  3173. Private Sub 物料圖_pb_Click(sender As Object, e As EventArgs) Handles 物料圖_pb.Click
  3174. If IsNothing(物料圖_pb.Image) = False Then : 圖片傳遞 = 物料圖_pb.Image : 圖片放大視窗.ShowDialog() : End If
  3175. End Sub
  3176. Private Sub 物料圖1_pb_Click(sender As Object, e As EventArgs) Handles 物料圖1_pb.Click
  3177. If IsNothing(物料圖1_pb.Image) = False Then : 圖片傳遞 = 物料圖1_pb.Image : 圖片放大視窗.ShowDialog() : End If
  3178. End Sub
  3179. Private Sub 小間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 小間距_ch.Click
  3180. 小間距_ch.Checked = True : 中間距_ch.Checked = False : 中間距_ch.Checked = False : Set_清單1()
  3181. End Sub
  3182. Private Sub 中間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 中間距_ch.Click
  3183. 小間距_ch.Checked = False : 中間距_ch.Checked = True : 中間距_ch.Checked = False : Set_清單1()
  3184. End Sub
  3185. Private Sub 大間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 大間距_ch.Click
  3186. 小間距_ch.Checked = False : 中間距_ch.Checked = False : 中間距_ch.Checked = True : Set_清單1()
  3187. End Sub
  3188. Private Sub 工資_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 工資_ch.Click
  3189. If 工資_ch.Checked = True Then : 工資_ch.Checked = True : Else : 工資_ch.Checked = False : End If
  3190. If 報價明細表_dgv.Columns(8).Visible = False Then : Set_報價明細表_dgv_利潤表關閉() : Else : Set_報價明細表_dgv_利潤表開啟() : End If : Set_合約報價明細表格式()
  3191. End Sub
  3192. Private Sub 材料_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 材料_ch.Click
  3193. If 材料_ch.Checked = True Then : 材料_ch.Checked = True : Else : 材料_ch.Checked = False : End If
  3194. If 報價明細表_dgv.Columns(8).Visible = False Then : Set_報價明細表_dgv_利潤表關閉() : Else : Set_報價明細表_dgv_利潤表開啟() : End If : Set_合約報價明細表格式()
  3195. End Sub
  3196. Private Sub 利潤表_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 利潤表_ch.Click
  3197. If 利潤表_ch.Checked = True Then : 利潤表_ch.Checked = True : Set_報價明細表_dgv_利潤表開啟() : Else : 利潤表_ch.Checked = False : Set_報價明細表_dgv_利潤表關閉() : End If
  3198. Set_合約報價明細表格式()
  3199. End Sub
  3200. Private Sub 合約改版_bt_Click(sender As Object, e As EventArgs) Handles 合約改版_bt.Click
  3201. If 合約編號_tb.Text = "" Then : MGB(系統語言字典("H102-147-" & 語言), 1) : Else
  3202. Dim SS1, SS2, SS3, SS4, SS5 As String
  3203. If 系統語言 = "繁體中文" Then
  3204. SS1 = "合約報價單改版後將發生下列變化,確認下列問題!!"
  3205. SS2 = "1、系統將依照舊版合約報價內容複製出新的合約報價。"
  3206. SS3 = "2、舊版合約報價將停用關閉,不在後續功能中顯示。"
  3207. SS4 = "3、請購、採購、入庫、出庫、工程等系統中與原編號"
  3208. SS5 = " 相連的資料都將歸檔到新的合約編號中。"
  3209. Else
  3210. SS1 = "Perubahan berikut akan terjadi setelah revisi kutipan kontrak, mohon konfirmasi masalah berikut!!"
  3211. SS2 = "1. Sistem akan menyalin kutipan kontrak baru sesuai dengan isi kutipan kontrak lama."
  3212. SS3 = "2. Versi lama dari kutipan kontrak akan dinonaktifkan dan tidak akan ditampilkan dalam fungsi tindak lanjut."
  3213. SS4 = "3. Data yang terkait dengan nomor asli dalam sistem permintaan, pengadaan, penyimpanan, pengiriman, teknik dan sistem lainnya akan diarsipkan dalam nomor kontrak baru."
  3214. SS5 = ""
  3215. End If
  3216. 通知訊息 = SS1 & vbCrLf & SS2 & vbCrLf & SS3 & vbCrLf & SS4 & vbCrLf & SS5 : 訊息類型 = "2" : 通知視窗.ShowDialog()
  3217. If 訊息回應 = "YES" Then
  3218. If 視窗4_pl.Visible = False Then
  3219. 新建_ch.Checked = False : 改版_ch.Checked = False : 轉移_ch.Checked = False
  3220. 合約編號_n_cb.Text = "" : 合約編號1_n_tb.Text = "" : 合約編號2_n_tb.Text = "" : 合約編號3_n_tb.Text = ""
  3221. 合約編號_n_cb.Enabled = False : 合約編號1_n_tb.Enabled = False : 合約編號2_n_tb.Enabled = False
  3222. 合約編號_o_cb.Text = 合約編號_cb.Text : 合約編號_n_cb.Text = 合約編號_cb.Text : 合約編號1_o_tb.Text = 合約編號1_tb.Text : 合約編號1_n_tb.Text = 合約編號1_tb.Text
  3223. 合約編號2_o_tb.Text = 合約編號2_tb.Text : 合約編號2_n_tb.Text = 合約編號2_tb.Text : 合約編號3_o_tb.Text = 合約編號3_tb.Text : 合約編號3_n_tb.Text = ""
  3224. If 深色風格 = False Then
  3225. 新建_ch.ForeColor = Color.Black : 改版_ch.ForeColor = Color.Black : 轉移_ch.ForeColor = Color.Black
  3226. Else
  3227. 新建_ch.ForeColor = Color.White : 改版_ch.ForeColor = Color.White : 轉移_ch.ForeColor = Color.White
  3228. End If
  3229. 視窗4_pl.Location = New System.Drawing.Point((Me.Size.Width - 視窗4_pl.Size.Width) / 2, (Me.Size.Height - 視窗4_pl.Size.Height) / 2)
  3230. 視窗4_pl.Visible = True : 視窗4_pl.BringToFront()
  3231. Else : 視窗4_pl.Visible = False : End If
  3232. End If
  3233. End If
  3234. End Sub
  3235. Private Sub 複製轉移_bt_Click(sender As Object, e As EventArgs) Handles 複製轉移_bt.Click
  3236. If 新建_ch.Checked = False And 改版_ch.Checked = False And 轉移_ch.Checked = False Then : MGB(系統語言字典("H102-148-" & 語言), 1)
  3237. If 深色風格 = False Then
  3238. 新建_ch.ForeColor = Color.Red : 改版_ch.ForeColor = Color.Red : 轉移_ch.ForeColor = Color.Red
  3239. Else
  3240. 新建_ch.ForeColor = Color.LightPink : 改版_ch.ForeColor = Color.LightPink : 轉移_ch.ForeColor = Color.LightPink
  3241. End If
  3242. Else
  3243. If 合約編號3_n_tb.Text = "" Then : MGB(系統語言字典("H102-149-" & 語言), 1) : Else
  3244. If 合約編號_n_cb.Text = "" Or 合約編號1_n_tb.Text = "" Or 合約編號2_n_tb.Text = "" Or 合約編號3_n_tb.Text = "" Then : MGB(系統語言字典("H102-150-" & 語言), 1) : Else
  3245. Dim 合約編號條件 As Boolean = True
  3246. If 合約編號_n_cb.Text = "" Then : MGB(系統語言字典("G000-202-" & 語言), 1) : 合約編號條件 = False : End If
  3247. If 合約編號1_n_tb.Text = "" Then : MGB(系統語言字典("G000-203-" & 語言), 1) : 合約編號條件 = False : Else
  3248. Dim d As Int32
  3249. For index = 0 To 合約編號1_n_tb.Text.Length - 1
  3250. d = Asc(合約編號1_n_tb.Text(index))
  3251. Dim 可能不行 As Boolean = False
  3252. If (d < 65 Or d > 90) Then : 可能不行 = True : End If 'c變數若在65~90是大寫的英文字母
  3253. If 可能不行 = True Then
  3254. If (d < 97 Or d > 122) Then : 可能不行 = True : Else : 可能不行 = False : End If 'c變數若在97~122是小寫的英文字母
  3255. If 可能不行 = True Then '然後查表, c變數若在48~57, 表示它是數字,
  3256. If (d < 48 Or d > 57) Then : MGB(系統語言字典("G000-204-" & 語言), 1) : 合約編號條件 = False : Exit For : End If
  3257. End If
  3258. End If
  3259. Next
  3260. End If
  3261. If 合約編號2_n_tb.Text = "" Then : MGB(系統語言字典("G000-205-" & 語言), 1) : 合約編號條件 = False : End If
  3262. Dim c As Int32 '然後查表, c變數若在48~57, 表示它是數字,
  3263. For index = 0 To 合約編號2_n_tb.Text.Length - 1
  3264. c = Asc(合約編號2_n_tb.Text(index))
  3265. If c < 48 Or c > 57 Then : MGB(系統語言字典("G000-206-" & 語言), 1) : 合約編號條件 = False : Exit For : Else
  3266. If Len(合約編號2_n_tb.Text) <> 6 Then : MGB(系統語言字典("G000-207-" & 語言), 1) : 合約編號條件 = False : Exit For : End If
  3267. End If
  3268. Next
  3269. If 合約編號3_n_tb.Text = "" Then : MGB(系統語言字典("G000-208-" & 語言), 1) : 合約編號條件 = False
  3270. ElseIf IsNumeric(合約編號3_n_tb.Text) = False Then : MGB(系統語言字典("G000-209-" & 語言), 1) : 合約編號條件 = False : End If
  3271. If 合約編號條件 = False Then : Else
  3272. If 轉移_ch.Checked = True Then
  3273. '-----------這裡是以轉移為前提--------------------------------------------------------------------------------------------------------
  3274. PA = 合約編號_n_cb.Text & "-" & 合約編號1_n_tb.Text & " " & 合約編號2_n_tb.Text & "-" & 合約編號3_n_tb.Text : SQL_合約查詢()
  3275. If dr.Read() Then : MGB(系統語言字典("H102-151-" & 語言), 1) : Else
  3276. PA17 = 合約編號_tb.Text : PA18 = 合約編號_n_cb.Text & "-" & 合約編號1_n_tb.Text & " " & 合約編號2_n_tb.Text & "-" & 合約編號3_n_tb.Text
  3277. PA19 = 合約編號1_n_tb.Text : PA20 = 合約編號2_n_tb.Text : PA21 = 合約編號3_n_tb.Text : PA22 = 合約編號_n_cb.Text
  3278. SQL_合約編號修改() : 視窗4_pl.Visible = False : MGB(系統語言字典("H102-152-" & 語言), 1) : Set_合約清單()
  3279. End If
  3280. Else
  3281. '-----------這裡是以新建為前提--------------------------------------------------------------------------------------------------------
  3282. PA = 合約編號_n_cb.Text & "-" & 合約編號1_n_tb.Text & " " & 合約編號2_n_tb.Text & "-" & 合約編號3_n_tb.Text : SQL_合約查詢()
  3283. If dr.Read() Then : MGB(系統語言字典("H102-153-" & 語言), 1) : Else
  3284. PA1 = 合約編號_n_cb.Text & "-" & 合約編號1_n_tb.Text & " " & 合約編號2_n_tb.Text & "-" & 合約編號3_n_tb.Text
  3285. PA = 合約編號_tb.Text : PA2 = 合約編號_n_cb.Text : PA3 = 合約編號1_n_tb.Text : PA4 = 合約編號2_n_tb.Text : PA5 = 合約編號3_n_tb.Text
  3286. If 改版_ch.Checked = True Then
  3287. BL1 = True : SQL_合約停用() '-----原合約停用---------------------
  3288. SQL_請購單改合約號() '-----請採購、倉儲,合約號變更-------
  3289. SQL_工程系統改合約號() '-----工程合約號變更-----------------
  3290. For i As Integer = 0 To 圖庫清單_dgv.Rows.Count - 1
  3291. 圖片庫 = 圖庫清單_dgv.Rows(i).Cells("資料庫").Value.ToString : SQL_圖庫系統改合約號() '-----圖庫合約號變更-----------------
  3292. Next
  3293. ElseIf 新建_ch.Checked = True Then
  3294. 'BL1 = True : SQL_合約停用()
  3295. End If
  3296. Dim 數量, 位置(20), 總表位置(20) As Integer : Dim 新編號, 連動(20) As String : 數量 = 0
  3297. 新編號 = PA1
  3298. PA = 新編號 : 選擇項1_tb.Text = "" : 複製報價 = True
  3299. '-----取出舊總表連動位置--------------------------------------------------------------------
  3300. For i As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  3301. If 報價總表_dgv.Rows(i).Cells("明細連動").Value.ToString() <> "" Then
  3302. 總表位置(數量) = i
  3303. For ii As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  3304. If 報價總表_dgv.Rows(i).Cells("明細連動").Value.ToString() = 報價明細表_dgv.Rows(ii).Cells("流水號").Value.ToString() Then
  3305. 位置(數量) = ii : Exit For
  3306. End If
  3307. Next : 數量 += 1
  3308. End If
  3309. Next
  3310. '-----生成新的報價係數----------------------------------------------------------------------
  3311. For i As Integer = 0 To 報價係數_dgv.Rows.Count - 1
  3312. PA2 = 報價係數_dgv("項目", i).Value.ToString : PA3 = 報價係數_dgv("係數", i).Value.ToString : PA4 = 報價係數_dgv("單位", i).Value.ToString
  3313. SQL_合約報價係數資料不重複() : If dr.Read Then : Else : 係數流水號() : SQL_合約報價係數_新增() : End If
  3314. Next : Set_合約報價係數()
  3315. '-----生成新的合約明細----------------------------------------------------------------------
  3316. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  3317. PA2 = 報價明細表_dgv.Rows(i).Cells("ITEM").Value.ToString() : PA3 = 報價明細表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString()
  3318. PA4 = 報價明細表_dgv.Rows(i).Cells("UNIT").Value.ToString() : PA5 = 報價明細表_dgv.Rows(i).Cells("QTY").Value.ToString()
  3319. PA6 = 報價明細表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value.ToString() : PA7 = 報價明細表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value.ToString()
  3320. PA8 = 報價明細表_dgv.Rows(i).Cells("REMARKS").Value.ToString()
  3321. PA10 = 報價明細表_dgv.Rows(i).Cells("實際數量").Value.ToString() : PA11 = 報價明細表_dgv.Rows(i).Cells("工資成本單價").Value.ToString()
  3322. PA12 = 報價明細表_dgv.Rows(i).Cells("工資報價單價").Value.ToString() : PA13 = 報價明細表_dgv.Rows(i).Cells("材料成本單價").Value.ToString()
  3323. PA14 = 報價明細表_dgv.Rows(i).Cells("材料報價單價").Value.ToString() : PA15 = 報價明細表_dgv.Rows(i).Cells(表頭(9)).Value.ToString()
  3324. PA16 = 報價明細表_dgv.Rows(i).Cells("材料係數").Value.ToString() : BL = 報價明細表_dgv.Rows(i).Cells("不計").Value
  3325. BL1 = 報價明細表_dgv.Rows(i).Cells("D1").Value : BL2 = 報價明細表_dgv.Rows(i).Cells("D2").Value : BL3 = 報價明細表_dgv.Rows(i).Cells("D3").Value
  3326. BL4 = 報價明細表_dgv.Rows(i).Cells("D4").Value : BL5 = 報價明細表_dgv.Rows(i).Cells("D5").Value : BL6 = 報價明細表_dgv.Rows(i).Cells("D6").Value
  3327. BL7 = 報價明細表_dgv.Rows(i).Cells("D7").Value : BL8 = 報價明細表_dgv.Rows(i).Cells("D8").Value : BL9 = 報價明細表_dgv.Rows(i).Cells("預設").Value
  3328. 明細表新增資料()
  3329. Next : 合約編號_tb.Text = 新編號 : Set_合約報價明細表()
  3330. '-----算出新明細連動編號--------------------------------------------------------------------
  3331. For i As Integer = 0 To 數量
  3332. For ii As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  3333. If ii = 位置(i) Then
  3334. 連動(i) = 報價明細表_dgv.Rows(ii).Cells("流水號").Value.ToString() : Exit For
  3335. End If
  3336. Next
  3337. Next
  3338. '-----生成新的合約總表----------------------------------------------------------------------
  3339. For i As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  3340. PA = 合約編號_tb.Text
  3341. PA2 = 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString() : PA3 = 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString()
  3342. PA4 = 報價總表_dgv.Rows(i).Cells("UNIT").Value.ToString() : PA5 = 報價總表_dgv.Rows(i).Cells("QTY").Value.ToString()
  3343. PA6 = 報價總表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value.ToString() : PA7 = 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value.ToString()
  3344. PA8 = 報價總表_dgv.Rows(i).Cells("REMARKS").Value.ToString()
  3345. For ii As Integer = 0 To 數量
  3346. If 總表位置(ii) = i Then
  3347. 報價總表_dgv.Rows(i).Cells("明細連動").Value = 連動(ii) : PA10 = 連動(ii) : Exit For
  3348. Else
  3349. PA10 = ""
  3350. End If
  3351. Next
  3352. 合約報價總表_最後一筆資料()
  3353. SQL_合約報價總表_最後一筆排序()
  3354. If dr.Read() Then : PA1 = dr("排序") : Else : PA1 = "000" : End If : conn.Close() : NUM1 = Double.Parse(PA1) + 1
  3355. If NUM1 < 10 Then : PA1 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : PA1 = "0" & NUM1 : ElseIf NUM1 > 99 Then : PA1 = NUM1 : End If
  3356. SQL_合約報價總表_新增資料()
  3357. Next : Set_合約報價總表() : 報價總表_dgv_自動計算()
  3358. '-----生成新的合約控制----------------------------------------------------------------------
  3359. 合約_dgv.Enabled = False : 合約編號2_tb.Enabled = True : 合約編號3_tb.Enabled = True
  3360. If 新建_ch.Checked = True Then : 預設資料1() : End If
  3361. 合約編號_cb.Text = 合約編號_n_cb.Text : 合約編號1_tb.Text = 合約編號1_n_tb.Text : 合約編號2_tb.Text = 合約編號2_n_tb.Text : 合約編號3_tb.Text = 合約編號3_n_tb.Text
  3362. 存檔_tb.PerformClick() : 複製報價 = False
  3363. If 改版_ch.Checked = True Then
  3364. PA = 合約編號_o_cb.Text & "-" & 合約編號1_o_tb.Text & " " & 合約編號2_o_tb.Text & "-" & 合約編號3_o_tb.Text
  3365. SQL_合約控制表讀取()
  3366. If dr.Read Then
  3367. PA1 = dr("報價說明").ToString : PA11 = dr("驗收開始日期").ToString : PA12 = dr("驗收完成日期").ToString
  3368. PA14 = dr("驗收備註").ToString : PA16 = dr("保固地址").ToString : PA18 = dr("結案備註").ToString
  3369. PA19 = dr("工程主管").ToString : PA20 = dr("工地驗收備註").ToString : PA32 = dr("簽回檔圖庫").ToString
  3370. If dr("追加減").ToString = "" Then : PA2 = "0" : Else : PA2 = dr("追加減").ToString : End If
  3371. If dr("結算金額").ToString = "" Then : PA3 = "0" : Else : PA3 = dr("結算金額").ToString : End If
  3372. If dr("已請款").ToString = "" Then : PA4 = "0" : Else : PA4 = dr("已請款").ToString : End If
  3373. If dr("剩餘款").ToString = "" Then : PA5 = "0" : Else : PA5 = dr("剩餘款").ToString : End If
  3374. If dr("預付款").ToString = "" Then : PA6 = "0" : Else : PA6 = dr("預付款").ToString : End If
  3375. If dr("到貨款").ToString = "" Then : PA7 = "0" : Else : PA7 = dr("到貨款").ToString : End If
  3376. If dr("施工款").ToString = "" Then : PA8 = "0" : Else : PA8 = dr("施工款").ToString : End If
  3377. If dr("驗收款").ToString = "" Then : PA9 = "0" : Else : PA9 = dr("驗收款").ToString : End If
  3378. If dr("保留款").ToString = "" Then : PA10 = "0" : Else : PA10 = dr("保留款").ToString : End If
  3379. If dr("保固期限").ToString = "" Then : PA15 = "0" : Else : PA15 = dr("保固期限").ToString : End If
  3380. If dr("預估工資成本").ToString = "" Then : PA21 = "0" : Else : PA21 = dr("預估工資成本").ToString : End If
  3381. If dr("預估工資報價").ToString = "" Then : PA22 = "0" : Else : PA22 = dr("預估工資報價").ToString : End If
  3382. If dr("工資利潤比").ToString = "" Then : PA23 = "0" : Else : PA23 = dr("工資利潤比").ToString : End If
  3383. If dr("預估材料成本").ToString = "" Then : PA24 = "0" : Else : PA24 = dr("預估材料成本").ToString : End If
  3384. If dr("預估材料報價").ToString = "" Then : PA25 = "0" : Else : PA25 = dr("預估材料報價").ToString : End If
  3385. If dr("材料利潤比").ToString = "" Then : PA26 = "0" : Else : PA26 = dr("材料利潤比").ToString : End If
  3386. If dr("總成本").ToString = "" Then : PA27 = "0" : Else : PA27 = dr("總成本").ToString : End If
  3387. If dr("總報價").ToString = "" Then : PA28 = "0" : Else : PA28 = dr("總報價").ToString : End If
  3388. If dr("利潤比1").ToString = "" Then : PA29 = "0" : Else : PA29 = dr("利潤比1").ToString : End If
  3389. If dr("利潤比2").ToString = "" Then : PA30 = "0" : Else : PA30 = dr("利潤比2").ToString : End If
  3390. If dr("預估利潤").ToString = "" Then : PA31 = "0" : Else : PA31 = dr("預估利潤").ToString : End If
  3391. If IsDBNull(dr("驗收結果")) = True Then : PA13 = "False" : Else : PA13 = dr("驗收結果") : End If
  3392. If IsDBNull(dr("合約停止")) = True Then : PA17 = "False" : Else : PA17 = dr("合約停止") : End If
  3393. If IsDBNull(dr("報價簽回")) = True Then : PA33 = "False" : Else : PA33 = dr("報價簽回") : End If
  3394. If IsDBNull(dr("合約簽回")) = True Then : PA34 = "False" : Else : PA34 = dr("合約簽回") : End If
  3395. If IsDBNull(dr("請款簽回")) = True Then : PA35 = "False" : Else : PA35 = dr("請款簽回") : End If
  3396. If IsDBNull(dr("驗收簽回")) = True Then : PA36 = "False" : Else : PA36 = dr("驗收簽回") : End If
  3397. If IsDBNull(dr("保固簽回")) = True Then : PA37 = "False" : Else : PA37 = dr("保固簽回") : End If
  3398. If IsDBNull(dr("報價放行")) = True Then : PA38 = "False" : Else : PA38 = dr("報價放行") : End If
  3399. If IsDBNull(dr("其他文件")) = True Then : PA39 = "False" : Else : PA39 = dr("其他文件") : End If
  3400. End If
  3401. PA = 合約編號_n_cb.Text & "-" & 合約編號1_n_tb.Text & " " & 合約編號2_n_tb.Text & "-" & 合約編號3_n_tb.Text : SQL_合約控制表_改版修正()
  3402. End If
  3403. PA = "" : 視窗4_pl.Visible = False : MGB(系統語言字典("H102-152-" & 語言), 1) : Set_合約清單()
  3404. End If
  3405. End If
  3406. End If
  3407. End If
  3408. End If
  3409. End If
  3410. End Sub
  3411. Private Sub 合約編號2_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 合約編號2_cb.SelectedIndexChanged
  3412. SQL6 = "" : Set_合約清單1()
  3413. End Sub
  3414. Private Sub 合約編號2_cb_Click(sender As Object, e As EventArgs) Handles 合約編號2_cb.Click
  3415. CB選擇清單(合約編號2_cb, 合約編號2_cb.Text)
  3416. End Sub
  3417. Private Sub 甲方_cb_Click(sender As Object, e As EventArgs) Handles 甲方_cb.Click
  3418. CB選擇清單(甲方_cb, 甲方_cb.Text)
  3419. End Sub
  3420. Private Sub 查詢1_bt_Click(sender As Object, e As EventArgs) Handles 查詢1_bt.Click
  3421. MGB(系統語言字典("H115-118-" & 語言), 1)
  3422. End Sub
  3423. Private Sub 全部選擇_bt_Click(sender As Object, e As EventArgs) Handles 全部選擇_bt.Click
  3424. For i As Integer = 0 To 報價明細表2_dgv.Rows.Count - 1
  3425. If 深色風格 = False Then
  3426. 報價明細表2_dgv.Rows(i).Cells(表頭(10)).Value = True : 報價明細表2_dgv.Rows(i).DefaultCellStyle.BackColor = Color.LightGreen
  3427. Else
  3428. 報價明細表2_dgv.Rows(i).Cells(表頭(10)).Value = True : 報價明細表2_dgv.Rows(i).DefaultCellStyle.BackColor = Color.Green
  3429. End If
  3430. Next i
  3431. End Sub
  3432. Private Sub 全部取消_bt_Click(sender As Object, e As EventArgs) Handles 全部取消_bt.Click
  3433. For i As Integer = 0 To 報價明細表2_dgv.Rows.Count - 1 : 報價明細表2_dgv.Rows(i).Cells(表頭(10)).Value = False
  3434. If 深色風格 = False Then : 報價明細表2_dgv.Rows(i).DefaultCellStyle.BackColor = Color.White
  3435. Else : 報價明細表2_dgv.Rows(i).DefaultCellStyle.BackColor = Color.Black : End If
  3436. Next
  3437. End Sub
  3438. Private Sub 預估利潤計算_bt_Click(sender As Object, e As EventArgs) Handles 預估利潤計算_bt.Click
  3439. INB(系統語言字典("H102-154-" & 語言)) : PA50 = 訊息回應 : 報價明細表_dgv_自動計算() : 預估利潤存檔() : PA50 = ""
  3440. End Sub
  3441. '----------------------自創視窗滑鼠拖曳功能---------------------------------------------------------------------------------------------------------
  3442. Dim OldX, OldY As Long : Dim drag As Boolean
  3443. Private Sub CanceL2_bt_Click(sender As Object, e As EventArgs) Handles CanceL2_bt.Click
  3444. If 視窗2_pl.Visible = False Then : 視窗2_pl.Visible = True : 視窗2_pl.BringToFront() : Else
  3445. 視窗2_pl.Visible = False : End If
  3446. End Sub
  3447. Private Sub CanceL3_bt_Click(sender As Object, e As EventArgs) Handles CanceL3_bt.Click
  3448. If 視窗3_pl.Visible = False Then : 視窗3_pl.Visible = True : 視窗3_pl.BringToFront() : Else
  3449. 視窗3_pl.Visible = False : End If
  3450. End Sub
  3451. Private Sub CanceL4_bt_Click(sender As Object, e As EventArgs) Handles CanceL4_bt.Click
  3452. If 視窗4_pl.Visible = False Then : 視窗4_pl.Visible = True : 視窗4_pl.BringToFront() : Else
  3453. 視窗4_pl.Visible = False : End If
  3454. End Sub
  3455. Private Sub 視窗2_pl_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗2_pl.MouseDown
  3456. If e.Button = MouseButtons.Left Then : OldX = e.X : OldY = e.Y : drag = True : End If
  3457. End Sub
  3458. Private Sub 視窗2_pl_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗2_pl.MouseMove
  3459. If drag Then : 視窗2_pl.Left = 視窗2_pl.Left + e.X - OldX : 視窗2_pl.Top = 視窗2_pl.Top + e.Y - OldY : End If
  3460. End Sub
  3461. Private Sub 視窗2_pl_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗2_pl.MouseUp
  3462. drag = False
  3463. End Sub
  3464. Private Sub 視窗3_pl_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗3_pl.MouseDown
  3465. If e.Button = MouseButtons.Left Then : OldX = e.X : OldY = e.Y : drag = True : End If
  3466. End Sub
  3467. Private Sub 視窗3_pl_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗3_pl.MouseMove
  3468. If drag Then : 視窗3_pl.Left = 視窗3_pl.Left + e.X - OldX : 視窗3_pl.Top = 視窗3_pl.Top + e.Y - OldY : End If
  3469. End Sub
  3470. Private Sub 視窗3_pl_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗3_pl.MouseUp
  3471. drag = False
  3472. End Sub
  3473. Private Sub 視窗4_pl_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗4_pl.MouseDown
  3474. If e.Button = MouseButtons.Left Then : OldX = e.X : OldY = e.Y : drag = True : End If
  3475. End Sub
  3476. Private Sub 視窗4_pl_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗4_pl.MouseMove
  3477. If drag Then : 視窗4_pl.Left = 視窗4_pl.Left + e.X - OldX : 視窗4_pl.Top = 視窗4_pl.Top + e.Y - OldY : End If
  3478. End Sub
  3479. Private Sub 視窗4_pl_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗4_pl.MouseUp
  3480. drag = False
  3481. End Sub
  3482. Private Sub 帶上歷史單價1_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 帶上歷史單價1_ch.CheckedChanged
  3483. 帶上歷史單價_ch.Checked = 帶上歷史單價1_ch.Checked
  3484. Dim CCC1 As Boolean = 帶上歷史單價1_ch.Checked
  3485. Dim CCC2 As Boolean = 帶上歷史單價_ch.Checked
  3486. End Sub
  3487. Private Sub 合約編號1_n_tb_TextChanged(sender As Object, e As EventArgs) Handles 合約編號1_n_tb.TextChanged
  3488. 合約編號1_n_tb.Text = 合約編號1_n_tb.Text.ToUpper
  3489. End Sub
  3490. Private Sub 合約編號1_o_tb_TextChanged(sender As Object, e As EventArgs) Handles 合約編號1_o_tb.TextChanged
  3491. 合約編號1_o_tb.Text = 合約編號1_o_tb.Text.ToUpper
  3492. End Sub
  3493. Private Sub 切換_ts_ValueChanged(sender As Object, e As EventArgs) Handles 切換_ts.ValueChanged
  3494. If 切換_ts.Value = True Then : 新式_P.Visible = True : Else : 新式_P.Visible = False : End If
  3495. End Sub
  3496. Private Sub 待送報價_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 待送報價_ch.Click
  3497. 待送報價_ch.Checked = True : 待審報價_ch.Checked = False : 報價放行_ch.Checked = False
  3498. 作廢報價_ch.Checked = False : 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = False : Set_合約清單()
  3499. End Sub
  3500. Private Sub 待審報價_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 待審報價_ch.Click
  3501. 待送報價_ch.Checked = False : 待審報價_ch.Checked = True : 報價放行_ch.Checked = False
  3502. 作廢報價_ch.Checked = False : 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = False : Set_合約清單()
  3503. End Sub
  3504. Private Sub 報價放行_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 報價放行_ch.Click
  3505. 待送報價_ch.Checked = False : 待審報價_ch.Checked = False : 報價放行_ch.Checked = True
  3506. 作廢報價_ch.Checked = False : 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = False : Set_合約清單()
  3507. End Sub
  3508. Private Sub 作廢報價_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 作廢報價_ch.Click
  3509. 待送報價_ch.Checked = False : 待審報價_ch.Checked = False : 報價放行_ch.Checked = False
  3510. 作廢報價_ch.Checked = True : 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = False : Set_合約清單()
  3511. End Sub
  3512. Private Sub 報價簽回_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 報價簽回_ch.Click
  3513. 待送報價_ch.Checked = False : 待審報價_ch.Checked = False : 報價放行_ch.Checked = False
  3514. 作廢報價_ch.Checked = False : 報價簽回_ch.Checked = True : 合約簽回_ch.Checked = False : Set_合約清單()
  3515. End Sub
  3516. Private Sub 合約簽回_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 合約簽回_ch.Click
  3517. 待送報價_ch.Checked = False : 待審報價_ch.Checked = False : 報價放行_ch.Checked = False
  3518. 作廢報價_ch.Checked = False : 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = True : Set_合約清單()
  3519. End Sub
  3520. Private Sub 計算基數_nud_ValueChanged(sender As Object, e As EventArgs) Handles 計算基數_nud.ValueChanged
  3521. For i As Integer = 0 To BOM表明細_dgv.Rows.Count - 1
  3522. BOM表明細_dgv.Rows(i).Cells(表頭(5)).Value = BOM表明細_dgv.Rows(i).Cells(36).Value * 計算基數_nud.Value
  3523. Next
  3524. End Sub
  3525. Private Sub 重新讀取_bt_Click(sender As Object, e As EventArgs) Handles 重新讀取_bt.Click
  3526. Set_BOM表控制()
  3527. End Sub
  3528. Private Sub 回首頁_bt_Click(sender As Object, e As EventArgs) Handles 回首頁_bt.Click
  3529. 主頁_p.BringToFront()
  3530. End Sub
  3531. Private Sub 回次頁_bt_Click(sender As Object, e As EventArgs) Handles 回次頁_bt.Click
  3532. If 頁面 = "1" Then : 主頁_p.BringToFront()
  3533. ElseIf 頁面 = "2" Then : 次頁_p.BringToFront()
  3534. Else : 主頁_p.BringToFront() : End If
  3535. End Sub
  3536. Private Sub 次項變形()
  3537. For i As Integer = 1 To 21 : Dim 選擇 As Panel = CType(Me.Controls.Find("AP" & i, True)(0), Panel) : 選擇.Visible = False : Next
  3538. Dim SS As Integer
  3539. If 群組分類_dgv.Rows.Count > 21 Then : SS = 21 : Else : SS = 群組分類_dgv.Rows.Count : End If
  3540. For i As Integer = 1 To SS : Dim 選擇 As Panel = CType(Me.Controls.Find("AP" & i, True)(0), Panel) : 選擇.Visible = True : Next
  3541. Dim 轉檔 As Boolean
  3542. For i As Integer = 0 To 群組分類_dgv.Rows.Count - 1
  3543. Dim 選擇 As PictureBox = CType(Me.Controls.Find("PB_" & i + 1, True)(0), PictureBox)
  3544. If IsDBNull(群組分類_dgv.Rows(i).Cells(2).Value) = True Then : 轉檔 = False : Else : 轉檔 = True : End If
  3545. While 轉檔 = True
  3546. Dim unused As Byte() = New Byte(-1) {}
  3547. Dim bytes As Byte() = DirectCast(群組分類_dgv.Rows(i).Cells(2).Value, Byte())
  3548. Dim oStream As New MemoryStream(bytes)
  3549. 選擇.Image = Bitmap.FromStream(oStream) : 轉檔 = False
  3550. End While : conn.Close() : 選擇.SizeMode = 4
  3551. Dim 選擇1 As System.Windows.Forms.TextBox = CType(Me.Controls.Find("TB_" & i + 1, True)(0), System.Windows.Forms.TextBox)
  3552. 選擇1.Text = 群組分類_dgv.Rows(i).Cells(1).Value.ToString
  3553. '---------未做換頁計算---------------------------------------------
  3554. 群組碼(i + 1) = 群組分類_dgv.Rows(i).Cells(0).Value.ToString
  3555. Next
  3556. End Sub
  3557. Private Sub 管材_bt_Click(sender As Object, e As EventArgs) Handles 管材_bt.Click
  3558. 頁面 = "1" : PA1 = "管材" : Set_群組清單() : 次頁_p.BringToFront()
  3559. End Sub
  3560. Private Sub 電線_bt_Click(sender As Object, e As EventArgs) Handles 電線_bt.Click
  3561. 頁面 = "1" : PA1 = "電線" : Set_群組清單() : 次頁_p.BringToFront()
  3562. End Sub
  3563. Private Sub 電料_bt_Click(sender As Object, e As EventArgs) Handles 電料_bt.Click
  3564. 頁面 = "1" : PA1 = "電料" : Set_群組清單() : 次頁_p.BringToFront()
  3565. End Sub
  3566. Private Sub 槽架_bt_Click(sender As Object, e As EventArgs) Handles 槽架_bt.Click
  3567. 頁面 = "1" : PA1 = "槽架" : Set_群組清單() : 次頁_p.BringToFront()
  3568. End Sub
  3569. Private Sub 建材_bt_Click(sender As Object, e As EventArgs) Handles 建材_bt.Click
  3570. 頁面 = "1" : PA1 = "建材" : Set_群組清單() : 次頁_p.BringToFront()
  3571. End Sub
  3572. Private Sub 五金_bt_Click(sender As Object, e As EventArgs) Handles 五金_bt.Click
  3573. 頁面 = "1" : PA1 = "五金" : Set_群組清單() : 次頁_p.BringToFront()
  3574. End Sub
  3575. Private Sub 設備_bt_Click(sender As Object, e As EventArgs) Handles 設備_bt.Click
  3576. 頁面 = "1" : PA1 = "設備" : Set_群組清單() : 次頁_p.BringToFront()
  3577. End Sub
  3578. Private Sub 工具_bt_Click(sender As Object, e As EventArgs) Handles 工具_bt.Click
  3579. 頁面 = "1" : PA1 = "工具" : Set_群組清單() : 次頁_p.BringToFront()
  3580. End Sub
  3581. Private Sub 日用_bt_Click(sender As Object, e As EventArgs) Handles 日用_bt.Click
  3582. 頁面 = "1" : PA1 = "日用" : Set_群組清單() : 次頁_p.BringToFront()
  3583. End Sub
  3584. Private Sub 其他_bt_Click(sender As Object, e As EventArgs) Handles 其他_bt.Click
  3585. 頁面 = "1" : PA1 = "其他" : Set_群組清單() : 次頁_p.BringToFront()
  3586. End Sub
  3587. Private Sub PB_1_Click(sender As Object, e As EventArgs) Handles PB_1.Click
  3588. 頁面 = "2" : PA1 = 群組碼(1) : Set_清單1_1() : 物料清單_P.BringToFront()
  3589. End Sub
  3590. Private Sub PB_2_Click(sender As Object, e As EventArgs) Handles PB_2.Click
  3591. 頁面 = "2" : PA1 = 群組碼(2) : Set_清單1_1() : 物料清單_P.BringToFront()
  3592. End Sub
  3593. Private Sub PB_3_Click(sender As Object, e As EventArgs) Handles PB_3.Click
  3594. 頁面 = "2" : PA1 = 群組碼(3) : Set_清單1_1() : 物料清單_P.BringToFront()
  3595. End Sub
  3596. Private Sub PB_4_Click(sender As Object, e As EventArgs) Handles PB_4.Click
  3597. 頁面 = "2" : PA1 = 群組碼(4) : Set_清單1_1() : 物料清單_P.BringToFront()
  3598. End Sub
  3599. Private Sub PB_5_Click(sender As Object, e As EventArgs) Handles PB_5.Click
  3600. 頁面 = "2" : PA1 = 群組碼(5) : Set_清單1_1() : 物料清單_P.BringToFront()
  3601. End Sub
  3602. Private Sub PB_6_Click(sender As Object, e As EventArgs) Handles PB_6.Click
  3603. 頁面 = "2" : PA1 = 群組碼(6) : Set_清單1_1() : 物料清單_P.BringToFront()
  3604. End Sub
  3605. Private Sub PB_7_Click(sender As Object, e As EventArgs) Handles PB_7.Click
  3606. 頁面 = "2" : PA1 = 群組碼(7) : Set_清單1_1() : 物料清單_P.BringToFront()
  3607. End Sub
  3608. Private Sub PB_8_Click(sender As Object, e As EventArgs) Handles PB_8.Click
  3609. 頁面 = "2" : PA1 = 群組碼(8) : Set_清單1_1() : 物料清單_P.BringToFront()
  3610. End Sub
  3611. Private Sub PB_9_Click(sender As Object, e As EventArgs) Handles PB_9.Click
  3612. 頁面 = "2" : PA1 = 群組碼(9) : Set_清單1_1() : 物料清單_P.BringToFront()
  3613. End Sub
  3614. Private Sub PB_10_Click(sender As Object, e As EventArgs) Handles PB_10.Click
  3615. 頁面 = "2" : PA1 = 群組碼(10) : Set_清單1_1() : 物料清單_P.BringToFront()
  3616. End Sub
  3617. Private Sub PB_11_Click(sender As Object, e As EventArgs) Handles PB_11.Click
  3618. 頁面 = "2" : PA1 = 群組碼(11) : Set_清單1_1() : 物料清單_P.BringToFront()
  3619. End Sub
  3620. Private Sub PB_12_Click(sender As Object, e As EventArgs) Handles PB_12.Click
  3621. 頁面 = "2" : PA1 = 群組碼(12) : Set_清單1_1() : 物料清單_P.BringToFront()
  3622. End Sub
  3623. Private Sub PB_13_Click(sender As Object, e As EventArgs) Handles PB_13.Click
  3624. 頁面 = "2" : PA1 = 群組碼(13) : Set_清單1_1() : 物料清單_P.BringToFront()
  3625. End Sub
  3626. Private Sub PB_14_Click(sender As Object, e As EventArgs) Handles PB_14.Click
  3627. 頁面 = "2" : PA1 = 群組碼(14) : Set_清單1_1() : 物料清單_P.BringToFront()
  3628. End Sub
  3629. Private Sub PB_15_Click(sender As Object, e As EventArgs) Handles PB_15.Click
  3630. 頁面 = "2" : PA1 = 群組碼(15) : Set_清單1_1() : 物料清單_P.BringToFront()
  3631. End Sub
  3632. Private Sub PB_16_Click(sender As Object, e As EventArgs) Handles PB_16.Click
  3633. 頁面 = "2" : PA1 = 群組碼(16) : Set_清單1_1() : 物料清單_P.BringToFront()
  3634. End Sub
  3635. Private Sub PB_17_Click(sender As Object, e As EventArgs) Handles PB_17.Click
  3636. 頁面 = "2" : PA1 = 群組碼(17) : Set_清單1_1() : 物料清單_P.BringToFront()
  3637. End Sub
  3638. Private Sub PB_18_Click(sender As Object, e As EventArgs) Handles PB_18.Click
  3639. 頁面 = "2" : PA1 = 群組碼(18) : Set_清單1_1() : 物料清單_P.BringToFront()
  3640. End Sub
  3641. Private Sub PB_19_Click(sender As Object, e As EventArgs) Handles PB_19.Click
  3642. 頁面 = "2" : PA1 = 群組碼(19) : Set_清單1_1() : 物料清單_P.BringToFront()
  3643. End Sub
  3644. Private Sub PB_20_Click(sender As Object, e As EventArgs) Handles PB_20.Click
  3645. 頁面 = "2" : PA1 = 群組碼(20) : Set_清單1_1() : 物料清單_P.BringToFront()
  3646. End Sub
  3647. Private Sub PB_21_Click(sender As Object, e As EventArgs) Handles PB_21.Click
  3648. 頁面 = "2" : PA1 = 群組碼(21) : Set_清單1_1() : 物料清單_P.BringToFront()
  3649. End Sub
  3650. Private Sub TB_1_TextChanged(sender As Object, e As EventArgs) Handles TB_1.Click
  3651. 頁面 = "2" : PA1 = 群組碼(1) : Set_清單1_1() : 物料清單_P.BringToFront()
  3652. End Sub
  3653. Private Sub TB_2_TextChanged(sender As Object, e As EventArgs) Handles TB_2.Click
  3654. 頁面 = "2" : PA1 = 群組碼(2) : Set_清單1_1() : 物料清單_P.BringToFront()
  3655. End Sub
  3656. Private Sub TB_3_TextChanged(sender As Object, e As EventArgs) Handles TB_3.Click
  3657. 頁面 = "2" : PA1 = 群組碼(3) : Set_清單1_1() : 物料清單_P.BringToFront()
  3658. End Sub
  3659. Private Sub TB_4_TextChanged(sender As Object, e As EventArgs) Handles TB_4.Click
  3660. 頁面 = "2" : PA1 = 群組碼(4) : Set_清單1_1() : 物料清單_P.BringToFront()
  3661. End Sub
  3662. Private Sub TB_5_TextChanged(sender As Object, e As EventArgs) Handles TB_5.Click
  3663. 頁面 = "2" : PA1 = 群組碼(5) : Set_清單1_1() : 物料清單_P.BringToFront()
  3664. End Sub
  3665. Private Sub TB_6_TextChanged(sender As Object, e As EventArgs) Handles TB_6.Click
  3666. 頁面 = "2" : PA1 = 群組碼(6) : Set_清單1_1() : 物料清單_P.BringToFront()
  3667. End Sub
  3668. Private Sub TB_7_TextChanged(sender As Object, e As EventArgs) Handles TB_7.Click
  3669. 頁面 = "2" : PA1 = 群組碼(7) : Set_清單1_1() : 物料清單_P.BringToFront()
  3670. End Sub
  3671. Private Sub TB_8_TextChanged(sender As Object, e As EventArgs) Handles TB_8.Click
  3672. 頁面 = "2" : PA1 = 群組碼(8) : Set_清單1_1() : 物料清單_P.BringToFront()
  3673. End Sub
  3674. Private Sub TB_9_TextChanged(sender As Object, e As EventArgs) Handles TB_9.Click
  3675. 頁面 = "2" : PA1 = 群組碼(9) : Set_清單1_1() : 物料清單_P.BringToFront()
  3676. End Sub
  3677. Private Sub TB_10_TextChanged(sender As Object, e As EventArgs) Handles TB_10.Click
  3678. 頁面 = "2" : PA1 = 群組碼(10) : Set_清單1_1() : 物料清單_P.BringToFront()
  3679. End Sub
  3680. Private Sub TB_11_TextChanged(sender As Object, e As EventArgs) Handles TB_11.Click
  3681. 頁面 = "2" : PA1 = 群組碼(11) : Set_清單1_1() : 物料清單_P.BringToFront()
  3682. End Sub
  3683. Private Sub TB_12_TextChanged(sender As Object, e As EventArgs) Handles TB_12.Click
  3684. 頁面 = "2" : PA1 = 群組碼(12) : Set_清單1_1() : 物料清單_P.BringToFront()
  3685. End Sub
  3686. Private Sub TB_13_TextChanged(sender As Object, e As EventArgs) Handles TB_13.Click
  3687. 頁面 = "2" : PA1 = 群組碼(13) : Set_清單1_1() : 物料清單_P.BringToFront()
  3688. End Sub
  3689. Private Sub TB_14_TextChanged(sender As Object, e As EventArgs) Handles TB_14.Click
  3690. 頁面 = "2" : PA1 = 群組碼(14) : Set_清單1_1() : 物料清單_P.BringToFront()
  3691. End Sub
  3692. Private Sub TB_15_TextChanged(sender As Object, e As EventArgs) Handles TB_15.Click
  3693. 頁面 = "2" : PA1 = 群組碼(15) : Set_清單1_1() : 物料清單_P.BringToFront()
  3694. End Sub
  3695. Private Sub TB_16_TextChanged(sender As Object, e As EventArgs) Handles TB_16.Click
  3696. 頁面 = "2" : PA1 = 群組碼(16) : Set_清單1_1() : 物料清單_P.BringToFront()
  3697. End Sub
  3698. Private Sub TB_17_TextChanged(sender As Object, e As EventArgs) Handles TB_17.Click
  3699. 頁面 = "2" : PA1 = 群組碼(17) : Set_清單1_1() : 物料清單_P.BringToFront()
  3700. End Sub
  3701. Private Sub TB_18_TextChanged(sender As Object, e As EventArgs) Handles TB_18.Click
  3702. 頁面 = "2" : PA1 = 群組碼(18) : Set_清單1_1() : 物料清單_P.BringToFront()
  3703. End Sub
  3704. Private Sub TB_19_TextChanged(sender As Object, e As EventArgs) Handles TB_19.Click
  3705. 頁面 = "2" : PA1 = 群組碼(19) : Set_清單1_1() : 物料清單_P.BringToFront()
  3706. End Sub
  3707. Private Sub TB_20_TextChanged(sender As Object, e As EventArgs) Handles TB_20.Click
  3708. 頁面 = "2" : PA1 = 群組碼(20) : Set_清單1_1() : 物料清單_P.BringToFront()
  3709. End Sub
  3710. Private Sub TB_21_TextChanged(sender As Object, e As EventArgs) Handles TB_21.Click
  3711. 頁面 = "2" : PA1 = 群組碼(21) : Set_清單1_1() : 物料清單_P.BringToFront()
  3712. End Sub
  3713. Private Sub 回首頁_bt_MouseEnter(sender As Object, e As EventArgs) Handles 回首頁_bt.MouseEnter
  3714. ToolTip1.SetToolTip(Me.回首頁_bt, 系統語言字典("G000-183-" & 語言))
  3715. End Sub
  3716. Private Sub 回次頁_bt_MouseEnter(sender As Object, e As EventArgs) Handles 回次頁_bt.MouseEnter
  3717. ToolTip1.SetToolTip(Me.回次頁_bt, 系統語言字典("G000-184-" & 語言))
  3718. End Sub
  3719. Private Sub 管材_bt_MouseEnter(sender As Object, e As EventArgs) Handles 管材_bt.MouseEnter
  3720. ToolTip1.SetToolTip(Me.管材_bt, 系統語言字典("G000-185-" & 語言))
  3721. End Sub
  3722. Private Sub 電線_bt_MouseEnter(sender As Object, e As EventArgs) Handles 電線_bt.MouseEnter
  3723. ToolTip1.SetToolTip(Me.電線_bt, 系統語言字典("G000-186-" & 語言))
  3724. End Sub
  3725. Private Sub 電料_bt_MouseEnter(sender As Object, e As EventArgs) Handles 電料_bt.MouseEnter
  3726. ToolTip1.SetToolTip(Me.電料_bt, 系統語言字典("G000-187-" & 語言))
  3727. End Sub
  3728. Private Sub 槽架_bt_MouseEnter(sender As Object, e As EventArgs) Handles 槽架_bt.MouseEnter
  3729. ToolTip1.SetToolTip(Me.槽架_bt, 系統語言字典("G000-188-" & 語言))
  3730. End Sub
  3731. Private Sub 建材_bt_MouseEnter(sender As Object, e As EventArgs) Handles 建材_bt.MouseEnter
  3732. ToolTip1.SetToolTip(Me.建材_bt, 系統語言字典("G000-189-" & 語言))
  3733. End Sub
  3734. Private Sub 五金_bt_MouseEnter(sender As Object, e As EventArgs) Handles 五金_bt.MouseEnter
  3735. ToolTip1.SetToolTip(Me.五金_bt, 系統語言字典("G000-190-" & 語言))
  3736. End Sub
  3737. Private Sub 設備_bt_MouseEnter(sender As Object, e As EventArgs) Handles 設備_bt.MouseEnter
  3738. ToolTip1.SetToolTip(Me.設備_bt, 系統語言字典("G000-191-" & 語言))
  3739. End Sub
  3740. Private Sub 群組碼中_cb_Click(sender As Object, e As EventArgs) Handles 群組碼中_cb.Click
  3741. CB選擇清單(群組碼中_cb, 群組碼中_cb.Text)
  3742. End Sub
  3743. Private Sub 群組碼中_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 群組碼中_cb.TextChanged
  3744. If 系統語言 = "繁體中文" Then
  3745. 群組碼印_cb.SelectedIndex = 群組碼中_cb.SelectedIndex : 群組碼_cb.SelectedIndex = 群組碼中_cb.SelectedIndex : Set_BOM表控制()
  3746. End If
  3747. End Sub
  3748. Private Sub 群組碼印_cb_Click(sender As Object, e As EventArgs) Handles 群組碼印_cb.Click
  3749. CB選擇清單(群組碼印_cb, 群組碼印_cb.Text)
  3750. End Sub
  3751. Private Sub 群組碼印_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 群組碼印_cb.TextChanged
  3752. If 系統語言 <> "繁體中文" Then
  3753. 群組碼中_cb.SelectedIndex = 群組碼印_cb.SelectedIndex : 群組碼_cb.SelectedIndex = 群組碼印_cb.SelectedIndex : Set_BOM表控制()
  3754. End If
  3755. End Sub
  3756. Private Sub 工具_bt_MouseEnter(sender As Object, e As EventArgs) Handles 工具_bt.MouseEnter
  3757. ToolTip1.SetToolTip(Me.工具_bt, 系統語言字典("G000-192-" & 語言))
  3758. End Sub
  3759. Private Sub 日用_bt_MouseEnter(sender As Object, e As EventArgs) Handles 日用_bt.MouseEnter
  3760. ToolTip1.SetToolTip(Me.日用_bt, 系統語言字典("G000-193-" & 語言))
  3761. End Sub
  3762. Private Sub 其他_bt_MouseEnter(sender As Object, e As EventArgs) Handles 其他_bt.MouseEnter
  3763. ToolTip1.SetToolTip(Me.其他_bt, 系統語言字典("G000-194-" & 語言))
  3764. End Sub
  3765. Private Sub 存檔_tb_MouseEnter(sender As Object, e As EventArgs) Handles 存檔_tb.MouseEnter
  3766. ToolTip1.SetToolTip(Me.存檔_tb, 系統語言字典("H102-155-" & 語言))
  3767. End Sub
  3768. Private Sub 縮放2_bt_MouseEnter(sender As Object, e As EventArgs) Handles 縮放2_bt.MouseEnter
  3769. ToolTip1.SetToolTip(Me.縮放2_bt, 系統語言字典("G000-198-" & 語言))
  3770. End Sub
  3771. Private Sub 查詢_bt_MouseEnter(sender As Object, e As EventArgs) Handles 查詢_bt.MouseEnter
  3772. ToolTip1.SetToolTip(Me.查詢_bt, 系統語言字典("G000-113-" & 語言))
  3773. End Sub
  3774. Private Sub 查閱文件_bt_MouseEnter(sender As Object, e As EventArgs) Handles 查閱文件_bt.MouseEnter
  3775. ToolTip1.SetToolTip(Me.查閱文件_bt, 系統語言字典("H110-113-" & 語言))
  3776. End Sub
  3777. Private Sub 合約改版_bt_MouseEnter(sender As Object, e As EventArgs) Handles 合約改版_bt.MouseEnter
  3778. ToolTip1.SetToolTip(Me.合約改版_bt, 系統語言字典("H102-126-" & 語言))
  3779. End Sub
  3780. Private Sub 刪除合約_bt_MouseEnter(sender As Object, e As EventArgs) Handles 刪除合約_bt.MouseEnter
  3781. ToolTip1.SetToolTip(Me.刪除合約_bt, 系統語言字典("H102-125-" & 語言))
  3782. End Sub
  3783. Private Sub 發送_bt_MouseEnter(sender As Object, e As EventArgs) Handles 發送_bt.MouseEnter
  3784. ToolTip1.SetToolTip(Me.發送_bt, 系統語言字典("G000-234-" & 語言))
  3785. End Sub
  3786. Private Sub 排序1_bt_MouseEnter(sender As Object, e As EventArgs) Handles 排序1_bt.MouseEnter
  3787. ToolTip1.SetToolTip(Me.排序1_bt, 系統語言字典("H115-104-" & 語言))
  3788. End Sub
  3789. Private Sub 新增資料1_bt_MouseEnter(sender As Object, e As EventArgs) Handles 新增資料1_bt.MouseEnter
  3790. ToolTip1.SetToolTip(Me.新增資料1_bt, 系統語言字典("H115-103-" & 語言))
  3791. End Sub
  3792. Private Sub 總表編輯_bt_MouseEnter(sender As Object, e As EventArgs) Handles 總表編輯_bt.MouseEnter
  3793. ToolTip1.SetToolTip(Me.總表編輯_bt, 系統語言字典("H102-124-" & 語言))
  3794. End Sub
  3795. Private Sub 報價總表存檔_bt_MouseEnter(sender As Object, e As EventArgs) Handles 報價總表存檔_bt.MouseEnter
  3796. ToolTip1.SetToolTip(Me.報價總表存檔_bt, 系統語言字典("H102-123-" & 語言))
  3797. End Sub
  3798. Private Sub 總表選擇刪除_bt_MouseEnter(sender As Object, e As EventArgs) Handles 總表選擇刪除_bt.MouseEnter
  3799. ToolTip1.SetToolTip(Me.總表選擇刪除_bt, 系統語言字典("H102-122-" & 語言))
  3800. End Sub
  3801. Private Sub 列印成EXCEL_bt_MouseEnter(sender As Object, e As EventArgs) Handles 列印成EXCEL_bt.MouseEnter
  3802. ToolTip1.SetToolTip(Me.列印成EXCEL_bt, 系統語言字典("G000-114-" & 語言))
  3803. End Sub
  3804. Private Sub 折價計算_bt_MouseEnter(sender As Object, e As EventArgs) Handles 折價計算_bt.MouseEnter
  3805. ToolTip1.SetToolTip(Me.折價計算_bt, 系統語言字典("H102-121-" & 語言))
  3806. End Sub
  3807. Private Sub BOM新增到明細表_bt_MouseEnter(sender As Object, e As EventArgs) Handles BOM新增到明細表_bt.MouseEnter
  3808. ToolTip1.SetToolTip(Me.BOM新增到明細表_bt, 系統語言字典("H102-120-" & 語言))
  3809. End Sub
  3810. Private Sub 選取資料新增到明細表_bt_MouseEnter(sender As Object, e As EventArgs) Handles 選取資料新增到明細表_bt.MouseEnter
  3811. ToolTip1.SetToolTip(Me.選取資料新增到明細表_bt, 系統語言字典("H102-119-" & 語言))
  3812. End Sub
  3813. Private Sub 物料_ch_MouseEnter(sender As Object, e As EventArgs) Handles 物料_ch.MouseEnter
  3814. ToolTip1.SetToolTip(Me.物料_ch, 系統語言字典("H211-106-" & 語言))
  3815. End Sub
  3816. Private Sub BOM_ch_MouseEnter(sender As Object, e As EventArgs) Handles BOM_ch.MouseEnter
  3817. ToolTip1.SetToolTip(Me.BOM_ch, "BOM")
  3818. End Sub
  3819. Private Sub 合約_ch_MouseEnter(sender As Object, e As EventArgs) Handles 合約_ch.MouseEnter
  3820. ToolTip1.SetToolTip(Me.合約_ch, 系統語言字典("H506-167-" & 語言))
  3821. End Sub
  3822. Private Sub 排序2_bt_MouseEnter(sender As Object, e As EventArgs) Handles 排序2_bt.MouseEnter
  3823. ToolTip1.SetToolTip(Me.排序2_bt, 系統語言字典("H115-104-" & 語言))
  3824. End Sub
  3825. Private Sub 新增資料2_bt_MouseEnter(sender As Object, e As EventArgs) Handles 新增資料2_bt.MouseEnter
  3826. ToolTip1.SetToolTip(Me.新增資料2_bt, 系統語言字典("H115-103-" & 語言))
  3827. End Sub
  3828. Private Sub 明細表編輯_bt_MouseEnter(sender As Object, e As EventArgs) Handles 明細表編輯_bt.MouseEnter
  3829. ToolTip1.SetToolTip(Me.明細表編輯_bt, 系統語言字典("H102-118-" & 語言))
  3830. End Sub
  3831. Private Sub 選擇材料新增到明細表_bt_MouseEnter(sender As Object, e As EventArgs) Handles 選擇材料新增到明細表_bt.MouseEnter
  3832. ToolTip1.SetToolTip(Me.選擇材料新增到明細表_bt, 系統語言字典("H115-105-" & 語言))
  3833. End Sub
  3834. Private Sub 修改明細表上的材料指定_bt_MouseEnter(sender As Object, e As EventArgs) Handles 修改明細表上的材料指定_bt.MouseEnter
  3835. ToolTip1.SetToolTip(Me.修改明細表上的材料指定_bt, 系統語言字典("H115-106-" & 語言))
  3836. End Sub
  3837. Private Sub 規格顯示修改_bt_MouseEnter(sender As Object, e As EventArgs) Handles 規格顯示修改_bt.MouseEnter
  3838. ToolTip1.SetToolTip(Me.規格顯示修改_bt, 系統語言字典("H102-117-" & 語言))
  3839. End Sub
  3840. Private Sub 報價明細表存檔_bt_MouseEnter(sender As Object, e As EventArgs) Handles 報價明細表存檔_bt.MouseEnter
  3841. ToolTip1.SetToolTip(Me.報價明細表存檔_bt, 系統語言字典("H102-116-" & 語言))
  3842. End Sub
  3843. Private Sub 總表選擇刪除1_bt_MouseEnter(sender As Object, e As EventArgs) Handles 總表選擇刪除1_bt.MouseEnter
  3844. ToolTip1.SetToolTip(Me.總表選擇刪除1_bt, 系統語言字典("G000-112-" & 語言))
  3845. End Sub
  3846. Private Sub 縮放1_bt_MouseEnter(sender As Object, e As EventArgs) Handles 縮放1_bt.MouseEnter
  3847. ToolTip1.SetToolTip(Me.縮放1_bt, 系統語言字典("G000-151-" & 語言))
  3848. End Sub
  3849. Private Sub 合約作廢_bt_MouseEnter(sender As Object, e As EventArgs) Handles 合約作廢_bt.MouseEnter
  3850. ToolTip1.SetToolTip(Me.合約作廢_bt, 系統語言字典("H102-114-" & 語言))
  3851. End Sub
  3852. '----------------------列印成excel---------------------------------------------------------------------------------------------------------
  3853. Dim 主頁1 As Boolean
  3854. Private Sub 列印成EXCEL_bt_Click(sender As Object, e As EventArgs) Handles 列印成EXCEL_bt.Click
  3855. If 合約編號_tb.Text = "" Then : MGB(系統語言字典("H115-122-" & 語言), 1) : Else '合約列印選擇.ShowDialog() :
  3856. XN1 = 0
  3857. xlApp = CType(CreateObject("Excel.Application"), Microsoft.Office.Interop.Excel.Application)
  3858. xlApp.Visible = True : xlApp.DisplayAlerts = True : xlApp.Application.WindowState = xlMaximized : xlBook = xlApp.Workbooks.Add
  3859. '----------------------------------------------------------------------------------------------------------------------
  3860. xlSheet = NewMethod(xlBook) : xlApp.Sheets(1).Select : xlApp.Sheets(1).Name = "明細表"
  3861. xlBook.Activate() : xlSheet.Activate()
  3862. xlSheet.Cells(2, 1) = "QUOTATION(報價單)" : xlSheet.Cells(3, 7) = "NO : " & 合約編號_tb.Text
  3863. xlSheet.Cells(3, 1) = "業主名稱 : " & 客戶名稱_tb.Text : xlSheet.Cells(4, 7) = "Date : " & Strings.Format(Today(), "yyyy/MM/dd")
  3864. xlSheet.Cells(4, 1) = "工程項目 : " & 工程名稱_中_tb.Text & vbCrLf & 工程名稱_英_tb.Text
  3865. xlSheet.Cells(5, 1) = "ITEM" : xlSheet.Cells(5, 2) = "DESCRIPTION" : xlSheet.Cells(5, 3) = "UNIT"
  3866. xlSheet.Cells(5, 4) = "Q'TY" : xlSheet.Cells(5, 9) = "REMARKS"
  3867. If 工材分離_ch.Checked = False Then : xlSheet.Cells(5, 5) = "UNIT PRICE" & vbCrLf & "(RP)" : xlSheet.Cells(5, 7) = "AMOUNT" & vbCrLf & "(RP)" : Else
  3868. xlSheet.Cells(5, 5) = "工資報價單價" & vbCrLf & "Hrga satuan penawaran gaji" : xlSheet.Cells(5, 6) = "工資報價復價" & vbCrLf & "Total harga upah"
  3869. xlSheet.Cells(5, 7) = "材料報價單價" & vbCrLf & "Harga satuan kutipan material" : xlSheet.Cells(5, 8) = "材料報價複價" & vbCrLf & "Harga total kuotasi material"
  3870. End If
  3871. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  3872. If 報價明細表_dgv.Rows(i).Cells("ITEM").Value.ToString() = "*" Then : Else
  3873. xlSheet.Cells(6 + i, 1) = 報價明細表_dgv.Rows(i).Cells("ITEM").Value.ToString()
  3874. End If
  3875. xlSheet.Cells(6 + i, 2) = 報價明細表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString()
  3876. xlSheet.Cells(6 + i, 3) = 報價明細表_dgv.Rows(i).Cells("UNIT").Value.ToString()
  3877. If CLng(報價明細表_dgv.Rows(i).Cells("QTY").Value.ToString()) = 0 Then : xlSheet.Cells(6 + i, 4) = "" : Else
  3878. xlSheet.Cells(6 + i, 4) = 報價明細表_dgv.Rows(i).Cells("QTY").Value.ToString() : End If
  3879. xlSheet.Cells(6 + i, 9) = 報價明細表_dgv.Rows(i).Cells("REMARKS").Value.ToString()
  3880. If 工材分離_ch.Checked = False Then
  3881. If CLng(報價明細表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value.ToString()) = 0 Then : xlSheet.Cells(6 + i, 5) = "" : Else
  3882. xlSheet.Cells(6 + i, 5) = 報價明細表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value.ToString() : End If
  3883. If CLng(報價明細表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value.ToString()) = 0 Then : xlSheet.Cells(6 + i, 7) = "" : Else
  3884. xlSheet.Cells(6 + i, 7) = 報價明細表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value.ToString() : End If
  3885. Else
  3886. If CLng(報價明細表_dgv.Rows(i).Cells("工資報價單價").Value.ToString()) = 0 Then : xlSheet.Cells(6 + i, 5) = "" : Else
  3887. xlSheet.Cells(6 + i, 5) = 報價明細表_dgv.Rows(i).Cells("工資報價單價").Value.ToString() : End If
  3888. If CLng(報價明細表_dgv.Rows(i).Cells("工資報價後價").Value.ToString()) = 0 Then : xlSheet.Cells(6 + i, 6) = "" : Else
  3889. xlSheet.Cells(6 + i, 6) = 報價明細表_dgv.Rows(i).Cells("工資報價後價").Value.ToString() : End If
  3890. If CLng(報價明細表_dgv.Rows(i).Cells("材料報價單價").Value.ToString()) = 0 Then : xlSheet.Cells(6 + i, 7) = "" : Else
  3891. xlSheet.Cells(6 + i, 7) = 報價明細表_dgv.Rows(i).Cells("材料報價單價").Value.ToString() : End If
  3892. If CLng(報價明細表_dgv.Rows(i).Cells("材料報價後價").Value.ToString()) = 0 Then : xlSheet.Cells(6 + i, 8) = "" : Else
  3893. xlSheet.Cells(6 + i, 8) = 報價明細表_dgv.Rows(i).Cells("材料報價後價").Value.ToString() : End If
  3894. End If
  3895. XN2 = 6 + i
  3896. Next
  3897. AA(xlApp, xlSheet) : 主頁1 = False
  3898. If 合約編號_cb.Text = "HX" Then : CC(xlApp, xlSheet) : Else : DD(xlApp, xlSheet) : End If : FF(xlApp, xlSheet)
  3899. '----------------------------------------------------------------------------------------------------------------------
  3900. xlSheet = NewMethod(xlBook) : xlApp.Sheets(1).Select : xlApp.Sheets(1).Name = "報價單"
  3901. xlBook.Activate() : xlSheet.Activate()
  3902. xlSheet.Cells(2, 1) = "QUOTATION(報價單)" : xlSheet.Cells(4, 6) = "NO : " & 合約編號_tb.Text
  3903. xlSheet.Cells(4, 1) = "業主名稱 : " & 客戶名稱_tb.Text : xlSheet.Cells(5, 6) = "Date : " & Strings.Format(Today(), "yyyy/MM/dd")
  3904. xlSheet.Cells(5, 1) = "工程項目 : " & 工程名稱_中_tb.Text & vbCrLf & 工程名稱_英_tb.Text
  3905. xlSheet.Cells(6, 1) = "ITEM" : xlSheet.Cells(6, 2) = "DESCRIPTION" : xlSheet.Cells(6, 3) = "UNIT" : xlSheet.Cells(6, 5) = "UNIT PRICE" & vbCrLf & "(RP)"
  3906. xlSheet.Cells(6, 6) = "AMOUNT" & vbCrLf & "(RP)" : xlSheet.Cells(6, 4) = "Q'TY" : xlSheet.Cells(6, 7) = "REMARKS"
  3907. Dim 無稅加總 As Long = 0
  3908. For i As Integer = 0 To 報價總表_dgv.Rows.Count - 1
  3909. If 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString() = "*" Or 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString() = "@" Or
  3910. 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString() = "^" Or 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString() = "$" Then : Else
  3911. xlSheet.Cells(7 + i, 1) = 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString()
  3912. End If
  3913. If 報價總表_dgv.Rows(i).Cells("ITEM").Value.ToString() = "@" Then
  3914. xlSheet.Cells(7 + i, 2) = "總計( 含稅 ) Grand Total( Including Tax)"
  3915. Else
  3916. xlSheet.Cells(7 + i, 2) = 報價總表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString()
  3917. End If
  3918. xlSheet.Cells(7 + i, 3) = 報價總表_dgv.Rows(i).Cells("UNIT").Value.ToString()
  3919. If CLng(報價總表_dgv.Rows(i).Cells("QTY").Value.ToString()) = 0 Then : xlSheet.Cells(7 + i, 4) = "" : Else
  3920. xlSheet.Cells(7 + i, 4) = 報價總表_dgv.Rows(i).Cells("QTY").Value.ToString()
  3921. End If
  3922. If CLng(報價總表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value.ToString()) = 0 Then : xlSheet.Cells(7 + i, 5) = "" : Else
  3923. xlSheet.Cells(7 + i, 5) = 報價總表_dgv.Rows(i).Cells("UNIT PRICE" & 幣別).Value.ToString()
  3924. End If
  3925. If CLng(報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value.ToString()) = 0 Then : xlSheet.Cells(7 + i, 6) = "" : Else
  3926. xlSheet.Cells(7 + i, 6) = 報價總表_dgv.Rows(i).Cells("AMOUNT" & 幣別).Value.ToString()
  3927. End If
  3928. xlSheet.Cells(7 + i, 7) = 報價總表_dgv.Rows(i).Cells("REMARKS").Value.ToString() : XN1 = 8 + i
  3929. Next
  3930. xlSheet.Cells(XN1 + 1, 1) = "報價說明Offer descriptions:" : xlSheet.Cells(XN1 + 2, 1) = 報價說明_tb.Text
  3931. xlSheet.Cells(XN1 + 3, 1) = "客戶確認 (簽名,蓋章)" : xlSheet.Cells(XN1 + 3, 3) = "核准" : xlSheet.Cells(XN1 + 3, 7) = "經辦人"
  3932. xlSheet.Cells(XN1 + 4, 1) = "Customer confirmation ( signature ) : " : xlSheet.Cells(XN1 + 4, 3) = "Approved : " : xlSheet.Cells(XN1 + 4, 7) = "Operator:"
  3933. xlSheet.Cells(XN1 + 5, 7) = gUserName
  3934. xlSheet.Cells(XN1 + 6, 1) = "_________________________________" : xlSheet.Cells(XN1 + 6, 3) = "_________________________________"
  3935. xlSheet.Cells(XN1 + 6, 7) = "_______________________"
  3936. BB(xlApp, xlSheet) : 主頁1 = True
  3937. If 合約編號_cb.Text = "HX" Then : CC(xlApp, xlSheet) : Else : DD(xlApp, xlSheet) : End If : GG(xlApp, xlSheet)
  3938. '----------------------------------------------------------------------------------------------------------------------
  3939. xlApp.Sheets(3).Delete : xlSheet.PageSetup.PrintArea = ""
  3940. '-------------轉換成PDF---------------------------------------------------------------------
  3941. Dim SERT As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
  3942. xlBook.Sheets(1).ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, SERT & "\" & 合約編號_tb.Text & "_X1.pdf", XlFixedFormatQuality.xlQualityStandard, True)
  3943. xlBook.Sheets(2).ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, SERT & "\" & 合約編號_tb.Text & "_X2.pdf", XlFixedFormatQuality.xlQualityStandard, True)
  3944. Dim pdf1 As String = SERT & "\" & 合約編號_tb.Text & "_X1.pdf" : Dim pdf2 As String = SERT & "\" & 合約編號_tb.Text & "_X2.pdf"
  3945. Dim outputPDF As String = SERT & "\" & 合約編號_tb.Text & ".pdf"
  3946. Dim mergedDocument As New PdfDocument() ' 创建一个新的PDF文档对象
  3947. Dim document1 As PdfDocument = PdfReader.Open(pdf1, PdfDocumentOpenMode.Import) ' 打开第一个PDF文件
  3948. For Each page As PdfPage In document1.Pages : mergedDocument.AddPage(page) : Next ' 将第一个PDF文件的页面逐一添加到合并文档
  3949. Dim document2 As PdfDocument = PdfReader.Open(pdf2, PdfDocumentOpenMode.Import) ' 打开第二个PDF文件
  3950. For Each page As PdfPage In document2.Pages : mergedDocument.AddPage(page) : Next ' 将第二个PDF文件的页面逐一添加到合并文档
  3951. mergedDocument.Save(outputPDF) ' 保存合并后的PDF文件
  3952. document1.Close() : document2.Close() ' 关闭文档对象
  3953. File.Delete(SERT & "\" & 合約編號_tb.Text & "_X1.pdf") : File.Delete(SERT & "\" & 合約編號_tb.Text & "_X2.pdf") ' 删除文件1和文件2
  3954. '-------------關閉EXCEL---------------------------------------------------------------------
  3955. xlApp.Cells.Select() : xlApp.Application.WindowState = xlMinimized
  3956. xlBook.Close(False)
  3957. Runtime.InteropServices.Marshal.ReleaseComObject(xlSheet)
  3958. Runtime.InteropServices.Marshal.ReleaseComObject(xlBook)
  3959. Runtime.InteropServices.Marshal.ReleaseComObject(xlApp)
  3960. xlApp.Quit() : xlSheet = Nothing : xlBook = Nothing : xlApp = Nothing : GC.Collect()
  3961. '-------------開啟PDF---------------------------------------------------------------------
  3962. Dim pdfFilePath As String = SERT & "\" & 合約編號_tb.Text & ".pdf"
  3963. If IsChromeInstalled() Then
  3964. Try
  3965. Dim chromeProcess As New Process()
  3966. chromeProcess.StartInfo.FileName = "chrome"
  3967. chromeProcess.StartInfo.Arguments = """" & pdfFilePath & """"
  3968. chromeProcess.Start() : MGB(系統語言字典("H204-134-" & 語言), 1)
  3969. Catch ex As Exception
  3970. MGB(系統語言字典("H204-134-" & 語言), 1)
  3971. End Try
  3972. Else
  3973. Try
  3974. System.Diagnostics.Process.Start("""" & pdfFilePath & """") : MGB(系統語言字典("H204-134-" & 語言), 1)
  3975. Catch ex As Exception
  3976. MGB(系統語言字典("H204-134-" & 語言), 1)
  3977. End Try
  3978. End If
  3979. End If
  3980. End Sub
  3981. ' 檢查系統是否已安裝 Google Chrome
  3982. Private Function IsChromeInstalled() As Boolean
  3983. Dim key As Microsoft.Win32.RegistryKey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall")
  3984. If key IsNot Nothing Then
  3985. For Each subkeyName As String In key.GetSubKeyNames()
  3986. Dim subkey As Microsoft.Win32.RegistryKey = key.OpenSubKey(subkeyName)
  3987. Dim displayName As Object = subkey.GetValue("DisplayName")
  3988. If displayName IsNot Nothing AndAlso displayName.ToString().Contains("Google Chrome") Then
  3989. Return True
  3990. End If
  3991. Next
  3992. End If
  3993. Return False
  3994. End Function
  3995. Private Shared Function NewMethod(xlBook As Workbook) As Worksheet
  3996. Return CType(xlBook.Worksheets.Add, Worksheet)
  3997. End Function
  3998. Private Sub AA(ByVal myExcel As Microsoft.Office.Interop.Excel.Application, ByVal xlSheet As Worksheet)
  3999. xlSheet.Cells.Select()
  4000. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 10 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
  4001. .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  4002. xlSheet.Range("A2:I2").Select()
  4003. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 14 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
  4004. .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  4005. xlSheet.Rows("1:1").Select : myExcel.Selection.RowHeight = 120
  4006. xlSheet.Rows("2:2").Select : myExcel.Selection.RowHeight = 30 : xlSheet.Rows("3:3").Select : myExcel.Selection.RowHeight = 20
  4007. xlSheet.Rows("4:4").Select : myExcel.Selection.RowHeight = 35 : xlSheet.Rows("5:5").Select : myExcel.Selection.RowHeight = 65
  4008. xlSheet.Rows("6:" & XN2).Select : myExcel.Selection.RowHeight = 35
  4009. If 工材分離_ch.Checked = True Then
  4010. xlSheet.Range("E5:H6").Select()
  4011. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 8 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
  4012. .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  4013. End If
  4014. xlSheet.Range("A5:I5").Select()
  4015. With myExcel.Selection.Interior : .Pattern = xlSolid : .PatternColorIndex = xlAutomatic : .ThemeColor = xlThemeColorAccent1 : .TintAndShade = 0.799981688894314
  4016. .PatternTintAndShade = 0 : End With
  4017. xlSheet.Range("A4").Select()
  4018. With myExcel.Selection : .HorizontalAlignment = xlGeneral : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4019. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  4020. xlSheet.Columns("A:A").Select : myExcel.Selection.ColumnWidth = 6
  4021. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 : .ShrinkToFit = False
  4022. .ReadingOrder = xlContext : .MergeCells = False : End With
  4023. xlSheet.Columns("C:D").Select : myExcel.Selection.ColumnWidth = 6 : xlSheet.Columns("I:I").Select : myExcel.Selection.ColumnWidth = 40
  4024. xlSheet.Columns("I:I").Select : myExcel.Selection.ColumnWidth = 18.5
  4025. If 工材分離_ch.Checked = False Then
  4026. xlSheet.Columns("G:H").Select : myExcel.Selection.ColumnWidth = 9 : xlSheet.Columns("E:F").Select : myExcel.Selection.ColumnWidth = 9
  4027. xlSheet.Columns("B:B").Select : myExcel.Selection.ColumnWidth = 50
  4028. Else
  4029. xlSheet.Columns("G:H").Select : myExcel.Selection.ColumnWidth = 13 : xlSheet.Columns("E:F").Select : myExcel.Selection.ColumnWidth = 13
  4030. xlSheet.Columns("B:B").Select : myExcel.Selection.ColumnWidth = 50
  4031. End If
  4032. xlSheet.Range("A2:I2").Select()
  4033. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4034. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  4035. xlSheet.Range("A3:F3").Select()
  4036. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4037. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  4038. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4039. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  4040. xlSheet.Range("A4:F4").Select()
  4041. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4042. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  4043. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4044. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  4045. xlSheet.Range("G3:I3").Select()
  4046. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4047. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  4048. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4049. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  4050. xlSheet.Range("G4:I4").Select()
  4051. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4052. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  4053. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4054. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  4055. If 工材分離_ch.Checked = False Then
  4056. xlSheet.Range("E5:F5").Select()
  4057. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4058. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  4059. xlSheet.Range("G5:H5").Select()
  4060. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4061. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  4062. End If
  4063. xlSheet.Range("C5:H5").Select()
  4064. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4065. .ShrinkToFit = False : .ReadingOrder = xlContext : End With
  4066. For i As Integer = 6 To XN2
  4067. xlSheet.Range("E" & i & ":F" & i).Select()
  4068. If 工材分離_ch.Checked = False Then
  4069. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4070. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge : End If
  4071. xlSheet.Range("G" & i & ":H" & i).Select()
  4072. If 工材分離_ch.Checked = False Then
  4073. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4074. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge : End If
  4075. Next
  4076. xlSheet.Range("E6:H" & XN2).Select()
  4077. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4078. .ShrinkToFit = False : .ReadingOrder = xlContext : End With
  4079. myExcel.Selection.NumberFormatLocal = "#,##0_ "
  4080. xlSheet.Range("C6:D" & XN2).Select()
  4081. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4082. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  4083. xlSheet.Range("I6:I" & XN2).Select()
  4084. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4085. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  4086. xlSheet.Range("B6:B" & XN2).Select()
  4087. With myExcel.Selection : .HorizontalAlignment = xlGeneral : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  4088. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  4089. xlSheet.Range("A5:I5").Select()
  4090. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  4091. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4092. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4093. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4094. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4095. With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4096. With myExcel.Selection.Borders(xlInsideHorizontal) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4097. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  4098. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4099. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4100. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4101. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4102. With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4103. myExcel.Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
  4104. xlSheet.Range("A6:I" & XN2).Select()
  4105. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  4106. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4107. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4108. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4109. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4110. With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4111. With myExcel.Selection.Borders(xlInsideHorizontal) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4112. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  4113. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4114. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4115. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4116. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4117. With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4118. xlSheet.Range("J17").Select() : myExcel.ActiveWindow.DisplayGridlines = False
  4119. xlSheet.Range("A4:F4").Select()
  4120. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False
  4121. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  4122. xlSheet.Range("A5:I5").Select()
  4123. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .Orientation = 0
  4124. .AddIndent = False : .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : End With
  4125. xlSheet.Range("A6:I" & XN2).Select()
  4126. With myExcel.Selection : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 : .ShrinkToFit = False
  4127. .ReadingOrder = xlContext : End With
  4128. Dim 攔寬 As Single
  4129. xlSheet.Rows("4:4").Select : xlSheet.Rows("4:4").EntireRow.AutoFit
  4130. 攔寬 = xlSheet.Rows("4:4").RowHeight
  4131. xlSheet.Rows("4:4").Select : myExcel.Selection.RowHeight = 攔寬 + 40
  4132. xlSheet.Rows("6:" & XN2).Select : xlSheet.Rows("6:" & XN2).EntireRow.AutoFit
  4133. For i As Integer = 6 To XN2
  4134. xlSheet.Rows(i & ":" & i).Select
  4135. 攔寬 = xlSheet.Rows(i & ":" & i).RowHeight
  4136. xlSheet.Rows(i & ":" & i).Select : myExcel.Selection.RowHeight = 攔寬 + 20
  4137. If Strings.Left(xlSheet.Cells(i, 2).value, 5) = "Total" Then
  4138. xlSheet.Range("A" & i & ":I" & i).Select()
  4139. With myExcel.Selection.Interior : .Pattern = xlSolid : .PatternColorIndex = xlAutomatic : .ThemeColor = xlThemeColorAccent1
  4140. .TintAndShade = 0.799981688894314 : .PatternTintAndShade = 0 : End With
  4141. End If
  4142. Next
  4143. xlSheet.Range("A3:F4").Select()
  4144. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 14 : .StrikeThrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  4145. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  4146. End Sub
  4147. Private Sub BB(ByVal myExcel As Microsoft.Office.Interop.Excel.Application, ByVal xlSheet As Worksheet)
  4148. xlSheet.Cells.Select()
  4149. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 10 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
  4150. .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  4151. xlSheet.Rows("2:2").Select
  4152. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 14 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
  4153. .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  4154. xlSheet.Rows("1:1").Select : myExcel.Selection.RowHeight = 120 : xlSheet.Rows("2:2").Select : myExcel.Selection.RowHeight = 30
  4155. xlSheet.Rows("4:4").Select : myExcel.Selection.RowHeight = 20 : xlSheet.Rows("5:5").Select : myExcel.Selection.RowHeight = 35
  4156. xlSheet.Rows("6:6").Select : myExcel.Selection.RowHeight = 40 : xlSheet.Columns("A:A").Select : myExcel.Selection.ColumnWidth = 6
  4157. xlSheet.Rows("7:" & XN1).Select : myExcel.Selection.RowHeight = 35
  4158. xlSheet.Columns("B:B").Select : myExcel.Selection.ColumnWidth = 60 : xlSheet.Columns("C:C").Select : myExcel.Selection.ColumnWidth = 6
  4159. xlSheet.Columns("D:D").Select : myExcel.Selection.ColumnWidth = 6 : xlSheet.Columns("E:E").Select : myExcel.Selection.ColumnWidth = 18
  4160. xlSheet.Columns("F:F").Select : myExcel.Selection.ColumnWidth = 18 : xlSheet.Columns("G:G").Select : myExcel.Selection.ColumnWidth = 18.5
  4161. xlSheet.Range("A2:G2").Select()
  4162. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4163. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  4164. xlSheet.Range("A4:E4").Select()
  4165. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4166. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  4167. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4168. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  4169. xlSheet.Range("A5:E5").Select()
  4170. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4171. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  4172. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4173. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  4174. xlSheet.Range("F4:G4").Select()
  4175. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4176. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  4177. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4178. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  4179. xlSheet.Range("F5:G5").Select()
  4180. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4181. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  4182. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4183. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  4184. xlSheet.Range("A6:A" & XN1 - 1).Select()
  4185. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4186. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  4187. xlSheet.Range("C6:D" & XN1 - 1).Select()
  4188. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4189. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  4190. xlSheet.Range("E6:F6").Select()
  4191. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4192. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  4193. xlSheet.Range("A6:G6").Select()
  4194. With myExcel.Selection.Interior : .Pattern = xlSolid : .PatternColorIndex = xlAutomatic : .ThemeColor = xlThemeColorLight2
  4195. .TintAndShade = 0.799981688894314 : .PatternTintAndShade = 0 : End With
  4196. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  4197. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4198. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4199. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4200. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4201. With myExcel.Selection.Borders(xlInsideVertical) : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4202. With myExcel.Selection.Borders(xlInsideHorizontal) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4203. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  4204. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4205. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4206. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4207. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4208. With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4209. myExcel.Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
  4210. xlSheet.Range("A7:G" & XN1 - 1).Select()
  4211. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  4212. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4213. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4214. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4215. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4216. With myExcel.Selection.Borders(xlInsideVertical) : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4217. With myExcel.Selection.Borders(xlInsideHorizontal) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4218. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  4219. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4220. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4221. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4222. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  4223. With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4224. xlSheet.Range("A" & XN1 + 1 & ":G" & XN1 + 1).Select()
  4225. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4226. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  4227. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4228. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  4229. xlSheet.Range("A" & XN1 + 2 & ":G" & XN1 + 2).Select()
  4230. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4231. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  4232. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4233. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  4234. xlSheet.Range("A" & XN1 + 1 & ":G" & XN1 + 2).Select()
  4235. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  4236. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4237. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4238. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4239. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  4240. myExcel.Selection.Borders(xlInsideVertical).LineStyle = xlNone : myExcel.Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
  4241. xlSheet.Rows(XN1 + 2 & ":" & XN1 + 2).Select : myExcel.Selection.RowHeight = 100
  4242. xlSheet.Rows(XN1 + 3 & ":" & XN1 + 3).Select : myExcel.Selection.RowHeight = 30
  4243. With myExcel.Selection : .HorizontalAlignment = xlGeneral : .VerticalAlignment = xlBottom : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4244. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  4245. xlSheet.Rows(XN1 + 5 & ":" & XN1 + 5).Select : myExcel.Selection.RowHeight = 80
  4246. xlSheet.Range("H17").Select() : myExcel.ActiveWindow.DisplayGridlines = False
  4247. xlSheet.Range("E7:F" & XN1 - 1).Select() : myExcel.Selection.NumberFormatLocal = "#,##0_ "
  4248. xlSheet.Range("A5:E5").Select()
  4249. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False
  4250. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  4251. xlSheet.Range("A6:G6").Select()
  4252. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  4253. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  4254. xlSheet.Range("A7:G" & XN1 - 1).Select()
  4255. With myExcel.Selection : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 : .ShrinkToFit = False
  4256. .ReadingOrder = xlContext : .MergeCells = False : End With
  4257. xlSheet.Range("A" & XN1 + 2 & ":G" & XN1 + 2).Select()
  4258. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlTop : .WrapText = True : .Orientation = 0 : .AddIndent = False
  4259. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  4260. Dim 攔寬 As Single
  4261. xlSheet.Rows("5:5").Select : xlSheet.Rows("5:5").EntireRow.AutoFit
  4262. 攔寬 = xlSheet.Rows("5:5").RowHeight
  4263. xlSheet.Rows("5:5").Select : myExcel.Selection.RowHeight = 攔寬 + 40
  4264. xlSheet.Rows("7:" & XN1).Select : xlSheet.Rows("7:" & XN1).EntireRow.AutoFit
  4265. For i As Integer = 7 To XN1
  4266. xlSheet.Rows(i & ":" & i).Select
  4267. 攔寬 = xlSheet.Rows(i & ":" & i).RowHeight
  4268. xlSheet.Rows(i & ":" & i).Select : myExcel.Selection.RowHeight = 攔寬 + 20
  4269. Next
  4270. xlSheet.Range("A4:E5").Select()
  4271. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 14 : .StrikeThrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  4272. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  4273. End Sub
  4274. Private Sub CC(ByVal myExcel As Microsoft.Office.Interop.Excel.Application, ByVal xlSheet As Worksheet)
  4275. Clipboard.SetDataObject(PictureBox1.Image)
  4276. xlSheet.Range("A1").Select()
  4277. myExcel.ActiveSheet.Pictures.Paste.Select
  4278. myExcel.Selection.ShapeRange.Height = 115
  4279. If 主頁1 = False Then
  4280. myExcel.Selection.ShapeRange.IncrementLeft(0)
  4281. Else
  4282. myExcel.Selection.ShapeRange.IncrementLeft(20)
  4283. End If
  4284. myExcel.Selection.ShapeRange.IncrementTop(0)
  4285. End Sub
  4286. Private Sub DD(ByVal myExcel As Microsoft.Office.Interop.Excel.Application, ByVal xlSheet As Worksheet)
  4287. Clipboard.SetDataObject(PictureBox2.Image)
  4288. xlSheet.Range("A1").Select()
  4289. myExcel.ActiveSheet.Pictures.Paste.Select
  4290. myExcel.Selection.ShapeRange.Height = 115
  4291. If 主頁1 = False Then
  4292. myExcel.Selection.ShapeRange.IncrementLeft(0)
  4293. Else
  4294. myExcel.Selection.ShapeRange.IncrementLeft(20)
  4295. End If
  4296. myExcel.Selection.ShapeRange.IncrementTop(0)
  4297. End Sub
  4298. Private Sub FF(ByVal myExcel As Microsoft.Office.Interop.Excel.Application, ByVal xlSheet As Worksheet)
  4299. If Strings.Left(合約編號_tb.Text, 2) = "HX" Then
  4300. myExcel.ActiveSheet.PageSetup.CenterHeaderPicture.Filename =
  4301. Str01 & "\HXBWLOG.png"
  4302. Else
  4303. myExcel.ActiveSheet.PageSetup.CenterHeaderPicture.Filename =
  4304. Str01 & "\PGSBWLOG.png"
  4305. End If
  4306. myExcel.Application.PrintCommunication = False : With myExcel.ActiveSheet.PageSetup : .PrintTitleRows = "$1:$5" : .PrintTitleColumns = "" : End With
  4307. myExcel.Application.PrintCommunication = True : myExcel.ActiveSheet.PageSetup.PrintArea = "" : myExcel.Application.PrintCommunication = False
  4308. With myExcel.ActiveSheet.PageSetup : .LeftHeader = ""
  4309. .CenterHeader = "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "&G"
  4310. .RightHeader = "" : .LeftFooter = "" : .CenterFooter = "第 &P 頁,共 &N 頁" : .RightFooter = ""
  4311. .LeftMargin = myExcel.Application.InchesToPoints(0.236220472440945) : .RightMargin = myExcel.Application.InchesToPoints(0.236220472440945)
  4312. .TopMargin = myExcel.Application.InchesToPoints(0.748031496062992) : .BottomMargin = myExcel.Application.InchesToPoints(0.748031496062992)
  4313. .HeaderMargin = myExcel.Application.InchesToPoints(0.31496062992126) : .FooterMargin = myExcel.Application.InchesToPoints(0.31496062992126)
  4314. .PrintHeadings = False : .PrintGridlines = False : .CenterHorizontally = True : .CenterVertically = False : .Draft = False
  4315. .FirstPageNumber = xlAutomatic : .BlackAndWhite = False : .Zoom = False : .FitToPagesWide = 1 : .FitToPagesTall = False : .OddAndEvenPagesHeaderFooter = False
  4316. .DifferentFirstPageHeaderFooter = False : .ScaleWithDocHeaderFooter = True : .AlignMarginsHeaderFooter = True
  4317. .EvenPage.LeftHeader.Text = "" : .EvenPage.CenterHeader.Text = "" : .EvenPage.RightHeader.Text = "" : .EvenPage.LeftFooter.Text = ""
  4318. .EvenPage.CenterFooter.Text = "" : .EvenPage.RightFooter.Text = "" : .FirstPage.LeftHeader.Text = "" : .FirstPage.CenterHeader.Text = ""
  4319. .FirstPage.RightHeader.Text = "" : .FirstPage.LeftFooter.Text = "" : .FirstPage.CenterFooter.Text = "" : .FirstPage.RightFooter.Text = ""
  4320. End With : myExcel.Application.PrintCommunication = True
  4321. End Sub
  4322. Private Sub GG(ByVal myExcel As Microsoft.Office.Interop.Excel.Application, ByVal xlSheet As Worksheet)
  4323. If Strings.Left(合約編號_tb.Text, 2) = "HX" Then
  4324. myExcel.ActiveSheet.PageSetup.CenterHeaderPicture.Filename =
  4325. Str01 & "\HXBWLOG.png"
  4326. Else
  4327. myExcel.ActiveSheet.PageSetup.CenterHeaderPicture.Filename =
  4328. Str01 & "\PGSBWLOG.png"
  4329. End If
  4330. myExcel.Application.PrintCommunication = False : With myExcel.ActiveSheet.PageSetup : .PrintTitleRows = "$1:$5" : .PrintTitleColumns = "" : End With
  4331. myExcel.Application.PrintCommunication = True : myExcel.ActiveSheet.PageSetup.PrintArea = "$A:$G" : myExcel.Application.PrintCommunication = False
  4332. With myExcel.ActiveSheet.PageSetup : .LeftHeader = ""
  4333. .CenterHeader = "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "&G"
  4334. .RightHeader = "" : .LeftFooter = "" : .CenterFooter = "第 &P 頁,共 &N 頁" : .RightFooter = ""
  4335. .LeftMargin = myExcel.Application.InchesToPoints(0.236220472440945) : .RightMargin = myExcel.Application.InchesToPoints(0.236220472440945)
  4336. .TopMargin = myExcel.Application.InchesToPoints(0.748031496062992) : .BottomMargin = myExcel.Application.InchesToPoints(0.748031496062992)
  4337. .HeaderMargin = myExcel.Application.InchesToPoints(0.31496062992126) : .FooterMargin = myExcel.Application.InchesToPoints(0.31496062992126)
  4338. .PrintHeadings = False : .PrintGridlines = False : .CenterHorizontally = True : .CenterVertically = False : .Draft = False
  4339. .FirstPageNumber = xlAutomatic : .BlackAndWhite = False : .Zoom = False : .FitToPagesWide = 1 : .FitToPagesTall = False : .OddAndEvenPagesHeaderFooter = False
  4340. .DifferentFirstPageHeaderFooter = False : .ScaleWithDocHeaderFooter = True : .AlignMarginsHeaderFooter = True
  4341. .EvenPage.LeftHeader.Text = "" : .EvenPage.CenterHeader.Text = "" : .EvenPage.RightHeader.Text = "" : .EvenPage.LeftFooter.Text = ""
  4342. .EvenPage.CenterFooter.Text = "" : .EvenPage.RightFooter.Text = "" : .FirstPage.LeftHeader.Text = "" : .FirstPage.CenterHeader.Text = ""
  4343. .FirstPage.RightHeader.Text = "" : .FirstPage.LeftFooter.Text = "" : .FirstPage.CenterFooter.Text = "" : .FirstPage.RightFooter.Text = ""
  4344. End With : myExcel.Application.PrintCommunication = True
  4345. End Sub
  4346. Private Sub 風格()
  4347. If 深色風格 = False Then
  4348. Me.BackColor = SystemColors.Control : 新式_P.BackColor = Color.White : 主頁_p.BackColor = Color.White : 次頁_p.BackColor = Color.White : 物料_p.BackColor = Color.White
  4349. 物料清單_P.BackColor = Color.White : BOM_p.BackColor = Color.White : 合約_p.BackColor = Color.White : 工程合約試算表_tc.BackColor = Color.White
  4350. 工程合約報價明細_tc.BackColor = SystemColors.Control
  4351. 視窗2_pl.BackColor = Color.White : Panel3.BackColor = Color.White : 總表空間_P.BackColor = Color.White
  4352. TabPage1.BackColor = Color.White : TabPage2.BackColor = Color.White : 建立合約資料_tc.BackColor = SystemColors.Control : 基本資料_P.BackColor = Color.White
  4353. 視窗3_pl.BackColor = SystemColors.Control : Panel4.BackColor = Color.White
  4354. '----------------黑-------------------------------------------
  4355. Label85.ForeColor = Color.Black : Label84.ForeColor = Color.Black : 帶上歷史單價1_ch.ForeColor = Color.Black : Label49.ForeColor = Color.Black
  4356. Label50.ForeColor = Color.Black : 帶上歷史單價_ch.ForeColor = Color.Black : 小間距_ch.ForeColor = Color.Black : 中間距_ch.ForeColor = Color.Black
  4357. 大間距_ch.ForeColor = Color.Black : 詳細資料1_ch.ForeColor = Color.Black
  4358. Label52.ForeColor = Color.Black : Label51.ForeColor = Color.Black : 詳細資料_ch.ForeColor = Color.Black : Label78.ForeColor = Color.Black
  4359. Label77.ForeColor = Color.Black : Label1.ForeColor = Color.Black : Label3.ForeColor = Color.Black : 料號_lb.ForeColor = Color.Black
  4360. 詳細資料3_ch.ForeColor = Color.Black : 直接輸入_ch.ForeColor = Color.Black : Label4.ForeColor = Color.Black : 使用計算機_ch.ForeColor = Color.Black
  4361. 詳細資料2_ch.ForeColor = Color.Black : 啟用批量選擇_ch.ForeColor = Color.Black
  4362. 材料_ch.ForeColor = Color.Black : 工資_ch.ForeColor = Color.Black : 利潤表_ch.ForeColor = Color.Black
  4363. Label16.ForeColor = Color.Black : 待送報價_ch.ForeColor = Color.Black : 待審報價_ch.ForeColor = Color.Black
  4364. 報價放行_ch.ForeColor = Color.Black : 作廢報價_ch.ForeColor = Color.Black : Label7.ForeColor = Color.Black : Label28.ForeColor = Color.Black
  4365. Label5.ForeColor = Color.Black : Label379.ForeColor = Color.Black : Label35.ForeColor = Color.Black : Label15.ForeColor = Color.Black
  4366. Label20.ForeColor = Color.Black : 合約停止_ch.ForeColor = Color.Black : 美金_ch.ForeColor = Color.Black : 人民幣_ch.ForeColor = Color.Black
  4367. 台幣_ch.ForeColor = Color.Black : 印尼盾_ch.ForeColor = Color.Black : Label380.ForeColor = Color.Black : Label64.ForeColor = Color.Black
  4368. Label70.ForeColor = Color.Black : Label68.ForeColor = Color.Black : 報價簽回_ch.ForeColor = Color.Black : 合約簽回_ch.ForeColor = Color.Black
  4369. 小間距1_ch.ForeColor = Color.Black : 中間距1_ch.ForeColor = Color.Black : 大間距1_ch.ForeColor = Color.Black : 不計_ch.ForeColor = Color.Black
  4370. Label75.ForeColor = Color.Black : Label32.ForeColor = Color.Black : Label22.ForeColor = Color.Black
  4371. '----------------紅-------------------------------------------
  4372. 群組編碼_lb.ForeColor = Color.Red : Label27.ForeColor = Color.Red : Label26.ForeColor = Color.Red
  4373. Label6.ForeColor = Color.Red : Label8.ForeColor = Color.Red : Label9.ForeColor = Color.Red
  4374. Label53.ForeColor = Color.Red : 稅前歸零_ch.ForeColor = Color.Red : 稅後歸零_ch.ForeColor = Color.Red : Label81.ForeColor = Color.Red
  4375. Label69.ForeColor = Color.Red : Label63.ForeColor = Color.Red : Label58.ForeColor = Color.Red : Label55.ForeColor = Color.Red
  4376. Label54.ForeColor = Color.Red : Label378.ForeColor = Color.Red : Label375.ForeColor = Color.Red : Label374.ForeColor = Color.Red
  4377. Label373.ForeColor = Color.Red : Label404.ForeColor = Color.Red : Label405.ForeColor = Color.Red : Label29.ForeColor = Color.Red
  4378. '----------------藍-------------------------------------------
  4379. Label73.ForeColor = Color.Blue : Label74.ForeColor = Color.Blue : Label24.ForeColor = Color.Blue : Label25.ForeColor = Color.Blue
  4380. 中文大寫1_ch.ForeColor = Color.Blue : 中文小寫1_ch.ForeColor = Color.Blue : 數字1_ch.ForeColor = Color.Blue : Label30.ForeColor = Color.Blue
  4381. Label45.ForeColor = Color.Blue : Label31.ForeColor = Color.Blue : Label82.ForeColor = Color.Blue : Label39.ForeColor = Color.Blue
  4382. Label40.ForeColor = Color.Blue : Label376.ForeColor = Color.Blue : Label377.ForeColor = Color.Blue : Label66.ForeColor = Color.Blue
  4383. Label65.ForeColor = Color.Blue : Label57.ForeColor = Color.Blue : Label60.ForeColor = Color.Blue : Label71.ForeColor = Color.Blue
  4384. Label13.ForeColor = Color.Blue : Label18.ForeColor = Color.Blue : Label14.ForeColor = Color.Blue : Label88.ForeColor = Color.Blue
  4385. Label93.ForeColor = Color.Blue
  4386. '----------------綠-------------------------------------------
  4387. Label23.ForeColor = Color.Green : 座標_lb.ForeColor = Color.Green : 工材分離_ch.ForeColor = Color.Green : Label80.ForeColor = Color.Green
  4388. Label83.ForeColor = Color.Green : Label79.ForeColor = Color.Green : CH1.ForeColor = Color.Green : 稅額顯示_lb.ForeColor = Color.Green
  4389. CH2.ForeColor = Color.Green : Label390.ForeColor = Color.Green : Label389.ForeColor = Color.Green : Label388.ForeColor = Color.Green
  4390. Label387.ForeColor = Color.Green : Label386.ForeColor = Color.Green : Label21.ForeColor = Color.Green : Label391.ForeColor = Color.Green
  4391. Label393.ForeColor = Color.Green : Label394.ForeColor = Color.Green : Label396.ForeColor = Color.Green : Label395.ForeColor = Color.Green
  4392. Label42.ForeColor = Color.Green : Label410.ForeColor = Color.Green : Label408.ForeColor = Color.Green : Label412.ForeColor = Color.Green
  4393. Label413.ForeColor = Color.Green : Label414.ForeColor = Color.Green : Label62.ForeColor = Color.Green : Label61.ForeColor = Color.Green
  4394. Label59.ForeColor = Color.Green : Label67.ForeColor = Color.Green : Label36.ForeColor = Color.Green : 座標1_lb.ForeColor = Color.Green
  4395. Label90.ForeColor = Color.Green : Label76.ForeColor = Color.Green
  4396. '--紫--
  4397. Label89.ForeColor = Color.FromArgb(64, 0, 64) : Label87.ForeColor = Color.FromArgb(64, 0, 64) : Label91.ForeColor = Color.FromArgb(64, 0, 64)
  4398. Label86.ForeColor = Color.FromArgb(64, 0, 64)
  4399. '---大便色---
  4400. Label33.ForeColor = Color.FromArgb(64, 64, 0) : Label19.ForeColor = Color.FromArgb(64, 64, 0) : Label94.ForeColor = Color.FromArgb(64, 64, 0)
  4401. 語轉扭_bt.BackColor = Color.White : 語轉扭_bt.ForeColor = Color.Black : 最後採購日1_tb.BackColor = Color.White : 最後採購日1_tb.ForeColor = Color.Black
  4402. 合約編號1_cb.BackColor = Color.White : 合約編號1_cb.ForeColor = Color.Black : 主項目_tb.BackColor = Color.White : 主項目_tb.ForeColor = Color.Black
  4403. 最後採購日_tb.BackColor = Color.White : 最後採購日_tb.ForeColor = Color.Black : 歷史單價1_tb.BackColor = Color.White : 歷史單價1_tb.ForeColor = Color.Black
  4404. 歷史單價_tb.BackColor = Color.White : 歷史單價_tb.ForeColor = Color.Black : 搜尋_bt.BackColor = Color.White : 搜尋_bt.ForeColor = Color.Black
  4405. 新群組1_cb.BackColor = Color.White : 新群組1_cb.ForeColor = Color.Black : ITEM4_cb.BackColor = Color.White : ITEM4_cb.ForeColor = Color.Black
  4406. 關鍵字搜尋1_tb.BackColor = Color.White : 關鍵字搜尋1_tb.ForeColor = Color.Black : 合約編號2_cb.BackColor = Color.White : 合約編號2_cb.ForeColor = Color.Black
  4407. 合約編號_1_tb.BackColor = Color.White : 合約編號_1_tb.ForeColor = Color.Black : 係數_nud.BackColor = Color.White : 係數_nud.ForeColor = Color.Black
  4408. 料號1_tb.BackColor = Color.White : 料號1_tb.ForeColor = Color.Black : 樓層_迴路_cb.BackColor = Color.White : 樓層_迴路_cb.ForeColor = Color.Black
  4409. 係數項目_cb.BackColor = Color.White : 係數項目_cb.ForeColor = Color.Black
  4410. 係數單位_cb.BackColor = Color.White : 係數單位_cb.ForeColor = Color.Black
  4411. 報價單合約編號_tb.BackColor = Color.White : 報價單合約編號_tb.ForeColor = Color.Black : 報價單客戶名稱_cb.BackColor = Color.White : 報價單客戶名稱_cb.ForeColor = Color.Black
  4412. 報價工程名稱_中_tb.BackColor = Color.White : 報價工程名稱_中_tb.ForeColor = Color.Black : 報價工程名稱_英_tb.BackColor = Color.White : 報價工程名稱_英_tb.ForeColor = Color.Black
  4413. ITEM3_cb.BackColor = Color.White : ITEM3_cb.ForeColor = Color.Black : 係數範本_tb.BackColor = Color.White : 係數範本_tb.ForeColor = Color.Black
  4414. 單位2_tb.BackColor = Color.White : 單位2_tb.ForeColor = Color.Black : 係數存檔_bt.BackColor = Color.White : 係數存檔_bt.ForeColor = Color.Black
  4415. 申請數_nud.BackColor = Color.White : 申請數_nud.ForeColor = Color.Black : 縮放_bt.BackColor = Color.White : 縮放_bt.ForeColor = Color.Black
  4416. 料號_tb.BackColor = Color.White : 料號_tb.ForeColor = Color.Black : 單位_tb.BackColor = Color.White : 單位_tb.ForeColor = Color.Black
  4417. 數量_tb.BackColor = Color.White : 數量_tb.ForeColor = Color.Black : 內容_tb.BackColor = Color.White : 內容_tb.ForeColor = Color.Black
  4418. 備註_tb.BackColor = Color.White : 備註_tb.ForeColor = Color.Black : 合計項_cb.BackColor = Color.White : 合計項_cb.ForeColor = Color.Black
  4419. 報價說明_tb.BackColor = Color.White : 報價說明_tb.ForeColor = Color.Black : 關鍵字搜尋_tb.BackColor = Color.White : 關鍵字搜尋_tb.ForeColor = Color.Black
  4420. 合約編號清單_bt.BackColor = Color.White : 合約編號清單_bt.ForeColor = Color.Black : 合約編號_cb.BackColor = Color.White : 合約編號_cb.ForeColor = Color.Black
  4421. 合約編號1_tb.BackColor = Color.White : 合約編號1_tb.ForeColor = Color.Black : 合約編號2_tb.BackColor = Color.White : 合約編號2_tb.ForeColor = Color.Black
  4422. 合約編號3_tb.BackColor = Color.White : 合約編號3_tb.ForeColor = Color.Black : 自動讀取_bt.BackColor = Color.White : 自動讀取_bt.ForeColor = Color.Black
  4423. 手動輸入_bt.BackColor = Color.White : 手動輸入_bt.ForeColor = Color.Black : 最末頁_cb.BackColor = Color.White : 最末頁_cb.ForeColor = Color.Black
  4424. 合約種類_cb.BackColor = Color.White : 合約種類_cb.ForeColor = Color.Black : 合約種類_tb.BackColor = Color.White : 合約種類_tb.ForeColor = Color.Black
  4425. 客戶名稱_tb.BackColor = Color.White : 客戶名稱_tb.ForeColor = Color.Black : 負責人_A_cb.BackColor = Color.White : 負責人_A_cb.ForeColor = Color.Black
  4426. 工程地點_tb.BackColor = Color.White : 工程地點_tb.ForeColor = Color.Black : 客戶地址_tb.BackColor = Color.White : 客戶地址_tb.ForeColor = Color.Black
  4427. 工程名稱_中_tb.BackColor = Color.White : 工程名稱_中_tb.ForeColor = Color.Black : 工程名稱_英_tb.BackColor = Color.White : 工程名稱_英_tb.ForeColor = Color.Black
  4428. 選擇公司_cb.BackColor = Color.White : 選擇公司_cb.ForeColor = Color.Black : 負責人_B_cb.BackColor = Color.White : 負責人_B_cb.ForeColor = Color.Black
  4429. 我司地址_tb.BackColor = Color.White : 我司地址_tb.ForeColor = Color.Black : NUD1.BackColor = Color.White : NUD1.ForeColor = Color.Black
  4430. NUD2.BackColor = Color.White : NUD2.ForeColor = Color.Black : NUD3.BackColor = Color.White : NUD3.ForeColor = Color.Black
  4431. 工程款1_nud.BackColor = Color.White : 工程款1_nud.ForeColor = Color.Black : 工程款2_nud.BackColor = Color.White : 工程款2_nud.ForeColor = Color.Black
  4432. 工程款3_nud.BackColor = Color.White : 工程款3_nud.ForeColor = Color.Black : 工程款4_nud.BackColor = Color.White : 工程款4_nud.ForeColor = Color.Black
  4433. 工程款5_nud.BackColor = Color.White : 工程款5_nud.ForeColor = Color.Black : 工程款6_nud.BackColor = Color.White : 工程款6_nud.ForeColor = Color.Black
  4434. 金額1_und.BackColor = Color.White : 金額1_und.ForeColor = Color.Black : 金額2_und.BackColor = Color.White : 金額2_und.ForeColor = Color.Black
  4435. 金額3_und.BackColor = Color.White : 金額3_und.ForeColor = Color.Black : 金額4_und.BackColor = Color.White : 金額4_und.ForeColor = Color.Black
  4436. 金額5_und.BackColor = Color.White : 金額5_und.ForeColor = Color.Black : 金額6_und.BackColor = Color.White : 金額6_und.ForeColor = Color.Black
  4437. 工期_nud.BackColor = Color.White : 工期_nud.ForeColor = Color.Black : 逾期_bt.BackColor = Color.White : 逾期_bt.ForeColor = Color.Black
  4438. 最高扣款_bt.BackColor = Color.White : 最高扣款_bt.ForeColor = Color.Black : 逾期_英_bt.BackColor = Color.White : 逾期_英_bt.ForeColor = Color.Black
  4439. 最高扣款_英_bt.BackColor = Color.White : 最高扣款_英_bt.ForeColor = Color.Black : 減價_bt.BackColor = Color.White : 減價_bt.ForeColor = Color.Black
  4440. 廠區_中文_tb.BackColor = Color.White : 廠區_中文_tb.ForeColor = Color.Black : 頁數_bt.BackColor = Color.White : 頁數_bt.ForeColor = Color.Black
  4441. 預估工資總成本_tb.BackColor = Color.White : 預估工資總成本_tb.ForeColor = Color.Black : 預估材料總成本_tb.BackColor = Color.White : 預估材料總成本_tb.ForeColor = Color.Black
  4442. 總成本_tb.BackColor = Color.White : 總成本_tb.ForeColor = Color.Black : 預估工資總報價_tb.BackColor = Color.White : 預估工資總報價_tb.ForeColor = Color.Black
  4443. 預估材料總報價_tb.BackColor = Color.White : 預估材料總報價_tb.ForeColor = Color.Black : 總報價_tb.BackColor = Color.White : 總報價_tb.ForeColor = Color.Black
  4444. 預估利潤_tb.BackColor = Color.White : 預估利潤_tb.ForeColor = Color.Black : 利潤比1_tb.BackColor = Color.White : 利潤比1_tb.ForeColor = Color.Black
  4445. 利潤比2_tb.BackColor = Color.White : 利潤比2_tb.ForeColor = Color.Black : 利潤比3_tb.BackColor = Color.White : 利潤比3_tb.ForeColor = Color.Black
  4446. 利潤比4_tb.BackColor = Color.White : 利潤比4_tb.ForeColor = Color.Black : 選擇項1_tb.BackColor = Color.White : 選擇項1_tb.ForeColor = Color.Black
  4447. 單位1_tb.BackColor = Color.White : 單位1_tb.ForeColor = Color.Black : 內容1_tb.BackColor = Color.White : 內容1_tb.ForeColor = Color.Black
  4448. 備註1_tb.BackColor = Color.White : 備註1_tb.ForeColor = Color.Black : 地點_中_tb.BackColor = Color.White : 地點_中_tb.ForeColor = Color.Blue
  4449. 地點_印_tb.BackColor = Color.White : 地點_印_tb.ForeColor = Color.Blue : 主項_中_cb.BackColor = Color.White : 主項_中_cb.ForeColor = Color.FromArgb(64, 0, 64)
  4450. 主項_印_cb.BackColor = Color.White : 主項_印_cb.ForeColor = Color.FromArgb(64, 0, 64) : 主名_中_cb.BackColor = Color.White : 主名_中_cb.ForeColor = Color.FromArgb(64, 0, 64)
  4451. 主名_印_cb.BackColor = Color.White : 主名_印_cb.ForeColor = Color.FromArgb(64, 0, 64) : 項名_中_cb.BackColor = Color.White : 項名_中_cb.ForeColor = Color.FromArgb(64, 0, 64)
  4452. 項名_印_cb.BackColor = Color.White : 項名_印_cb.ForeColor = Color.FromArgb(64, 0, 64) : 描述_中_cb.BackColor = Color.White : 描述_中_cb.ForeColor = Color.FromArgb(64, 0, 64)
  4453. 描述_印_cb.BackColor = Color.White : 描述_印_cb.ForeColor = Color.FromArgb(64, 0, 64) : 關鍵字_tb.BackColor = Color.White : 關鍵字_tb.ForeColor = Color.Green
  4454. 其他_中_cb.BackColor = Color.White : 其他_中_cb.ForeColor = Color.Green : 其他_印_cb.BackColor = Color.White : 其他_印_cb.ForeColor = Color.Green
  4455. 實際數量_nud.BackColor = Color.White : 實際數量_nud.ForeColor = Color.Black : 工資成本_nud.BackColor = Color.White : 工資成本_nud.ForeColor = Color.Black
  4456. 材料成本_nud.BackColor = Color.White : 材料成本_nud.ForeColor = Color.Black : 工資單價_cb.BackColor = Color.White : 工資單價_cb.ForeColor = Color.Black
  4457. 工資系數_cb.BackColor = Color.White : 工資系數_cb.ForeColor = Color.Black : 係數清單_cb.BackColor = Color.White : 係數清單_cb.ForeColor = Color.Black
  4458. 試算表_cb.BackColor = Color.White : 試算表_cb.ForeColor = Color.Blue : 選擇項_tb.BackColor = Color.White : 選擇項_tb.ForeColor = Color.Blue
  4459. 文字資料輸入1_bt.BackColor = Color.White : 文字資料輸入1_bt.ForeColor = Color.Blue : GroupBox2.BackColor = Color.White : GroupBox2.ForeColor = Color.Blue
  4460. ITEM1_cb.BackColor = Color.White : ITEM1_cb.ForeColor = Color.Blue : 未折價前_tb.BackColor = Color.White : 未折價前_tb.ForeColor = Color.Blue
  4461. 報價小計_tb.BackColor = Color.White : 報價小計_tb.ForeColor = Color.Blue : 文字資料輸入2_bt.BackColor = Color.White : 文字資料輸入2_bt.ForeColor = Color.Blue
  4462. ITEM2_cb.BackColor = Color.White : ITEM2_cb.ForeColor = Color.Blue : 合計項1_cb.BackColor = Color.White : 合計項1_cb.ForeColor = Color.Blue
  4463. GroupBox3.BackColor = Color.White : GroupBox3.ForeColor = Color.Blue
  4464. 全部選擇_bt.BackColor = Color.White : 全部選擇_bt.ForeColor = Color.Olive : 全部取消_bt.BackColor = Color.White : 全部取消_bt.ForeColor = Color.Olive
  4465. 上移2_bt.BackColor = Color.White : 下移2_bt.BackColor = Color.White : 新增資料3_bt.BackColor = Color.White : 明細表選擇刪除2_bt.BackColor = Color.White
  4466. 歸零位數_nud.BackColor = Color.White : 歸零位數_nud.ForeColor = Color.Red
  4467. 甲方_cb.BackColor = Color.White : 甲方_cb.ForeColor = Color.Green : 折讓比例_nud.BackColor = Color.White : 折讓比例_nud.ForeColor = Color.Green
  4468. TB_1.BackColor = Color.White : TB_1.ForeColor = Color.Black : TB_2.BackColor = Color.White : TB_2.ForeColor = Color.Black
  4469. TB_3.BackColor = Color.White : TB_3.ForeColor = Color.Black : TB_4.BackColor = Color.White : TB_4.ForeColor = Color.Black
  4470. TB_5.BackColor = Color.White : TB_5.ForeColor = Color.Black : TB_6.BackColor = Color.White : TB_6.ForeColor = Color.Black
  4471. TB_7.BackColor = Color.White : TB_7.ForeColor = Color.Black : TB_8.BackColor = Color.White : TB_8.ForeColor = Color.Black
  4472. TB_9.BackColor = Color.White : TB_9.ForeColor = Color.Black : TB_10.BackColor = Color.White : TB_10.ForeColor = Color.Black
  4473. TB_11.BackColor = Color.White : TB_11.ForeColor = Color.Black : TB_12.BackColor = Color.White : TB_12.ForeColor = Color.Black
  4474. TB_13.BackColor = Color.White : TB_13.ForeColor = Color.Black : TB_14.BackColor = Color.White : TB_14.ForeColor = Color.Black
  4475. TB_15.BackColor = Color.White : TB_15.ForeColor = Color.Black : TB_16.BackColor = Color.White : TB_16.ForeColor = Color.Black
  4476. TB_17.BackColor = Color.White : TB_17.ForeColor = Color.Black : TB_18.BackColor = Color.White : TB_18.ForeColor = Color.Black
  4477. TB_19.BackColor = Color.White : TB_19.ForeColor = Color.Black : TB_20.BackColor = Color.White : TB_20.ForeColor = Color.Black
  4478. TB_21.BackColor = Color.White : TB_21.ForeColor = Color.Black
  4479. PB_1.BackColor = Color.White : PB_2.BackColor = Color.White : PB_3.BackColor = Color.White : PB_4.BackColor = Color.White : PB_5.BackColor = Color.White
  4480. PB_6.BackColor = Color.White : PB_7.BackColor = Color.White : PB_8.BackColor = Color.White : PB_9.BackColor = Color.White : PB_10.BackColor = Color.White
  4481. PB_11.BackColor = Color.White : PB_12.BackColor = Color.White : PB_13.BackColor = Color.White : PB_14.BackColor = Color.White : PB_15.BackColor = Color.White
  4482. PB_16.BackColor = Color.White : PB_17.BackColor = Color.White : PB_18.BackColor = Color.White : PB_19.BackColor = Color.White : PB_20.BackColor = Color.White
  4483. PB_21.BackColor = Color.White
  4484. 查詢_bt.BackColor = Color.White : 縮放1_bt.BackColor = Color.White : 縮放2_bt.BackColor = Color.White : 查閱文件_bt.BackColor = Color.White
  4485. 合約改版_bt.BackColor = Color.White : 合約作廢_bt.BackColor = Color.White : 刪除合約_bt.BackColor = Color.White : 發送_bt.BackColor = Color.White
  4486. 存檔_tb.BackColor = Color.White : 回首頁_bt.BackColor = Color.White : 回次頁_bt.BackColor = Color.White : BOM新增到明細表_bt.BackColor = Color.White
  4487. 選取資料新增到明細表_bt.BackColor = Color.White : 查詢1_bt.BackColor = Color.White : 新增試算表_bt.BackColor = Color.White : 新增物件_bt.BackColor = Color.White
  4488. 修改試算表名稱_bt.BackColor = Color.White : 修改樓層_迴圈_bt.BackColor = Color.White : 材料加入1_bt.BackColor = Color.White : 存檔_bt.BackColor = Color.White
  4489. 刪除1_bt.BackColor = Color.White
  4490. 修改明細表上的材料指定_bt.BackColor = Color.White : 排序2_bt.BackColor = Color.White : 規格顯示修改_bt.BackColor = Color.White : 新增資料2_bt.BackColor = Color.White
  4491. 選擇材料新增到明細表_bt.BackColor = Color.White : 報價明細表存檔_bt.BackColor = Color.White : 明細表編輯_bt.BackColor = Color.White : 總表選擇刪除1_bt.BackColor = Color.White
  4492. 排序1_bt.BackColor = Color.White : 新增資料1_bt.BackColor = Color.White : 報價總表存檔_bt.BackColor = Color.White : 列印成EXCEL_bt.BackColor = Color.White
  4493. 折價計算_bt.BackColor = Color.White : 查詢_bt.BackColor = Color.White : 彙總存檔_bt.BackColor = Color.White : 上移_bt.BackColor = Color.White : 下移_bt.BackColor = Color.White
  4494. 上移1_bt.BackColor = Color.White : 下移1_bt.BackColor = Color.White
  4495. 報價明細表_dgv.EnableHeadersVisualStyles = True : 報價明細表_dgv.BackgroundColor = Color.White : 報價明細表_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4496. 報價明細表_dgv.DefaultCellStyle.BackColor = Color.White : 報價明細表_dgv.DefaultCellStyle.ForeColor = Color.Black
  4497. 報價總表_dgv.EnableHeadersVisualStyles = True : 報價總表_dgv.BackgroundColor = Color.White : 報價總表_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4498. 報價總表_dgv.DefaultCellStyle.BackColor = Color.White : 報價總表_dgv.DefaultCellStyle.ForeColor = Color.Black
  4499. 試算表_dgv.EnableHeadersVisualStyles = True : 試算表_dgv.BackgroundColor = Color.White : 試算表_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4500. 試算表_dgv.DefaultCellStyle.BackColor = Color.White : 試算表_dgv.DefaultCellStyle.ForeColor = Color.Black
  4501. 報價係數_dgv.EnableHeadersVisualStyles = True : 報價係數_dgv.BackgroundColor = Color.White : 報價係數_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4502. 報價係數_dgv.DefaultCellStyle.BackColor = Color.White : 報價係數_dgv.DefaultCellStyle.ForeColor = Color.Black
  4503. 報價係數1_dgv.EnableHeadersVisualStyles = True : 報價係數1_dgv.BackgroundColor = Color.White : 報價係數1_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4504. 報價係數1_dgv.DefaultCellStyle.BackColor = Color.White : 報價係數1_dgv.DefaultCellStyle.ForeColor = Color.Black
  4505. 報價明細表1_dgv.EnableHeadersVisualStyles = True : 報價明細表1_dgv.BackgroundColor = Color.White : 報價明細表1_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4506. 報價明細表1_dgv.DefaultCellStyle.BackColor = Color.White : 報價明細表1_dgv.DefaultCellStyle.ForeColor = Color.Black
  4507. 報價明細表3_dgv.EnableHeadersVisualStyles = True : 報價明細表3_dgv.BackgroundColor = Color.White : 報價明細表3_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4508. 報價明細表3_dgv.DefaultCellStyle.BackColor = Color.White : 報價明細表3_dgv.DefaultCellStyle.ForeColor = Color.Black
  4509. 合約_dgv.EnableHeadersVisualStyles = True : 合約_dgv.BackgroundColor = Color.White : 合約_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4510. 合約_dgv.DefaultCellStyle.BackColor = Color.White : 合約_dgv.DefaultCellStyle.ForeColor = Color.Black
  4511. 物料清單_dgv.EnableHeadersVisualStyles = True : 物料清單_dgv.BackgroundColor = Color.White : 物料清單_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4512. 物料清單_dgv.DefaultCellStyle.BackColor = Color.White : 物料清單_dgv.DefaultCellStyle.ForeColor = Color.Black
  4513. 物料規格_dgv.EnableHeadersVisualStyles = True : 物料規格_dgv.BackgroundColor = Color.White : 物料規格_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4514. 物料規格_dgv.DefaultCellStyle.BackColor = Color.White : 物料規格_dgv.DefaultCellStyle.ForeColor = Color.Black
  4515. 物料清單1_dgv.EnableHeadersVisualStyles = True : 物料清單1_dgv.BackgroundColor = Color.White : 物料清單1_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4516. 物料清單1_dgv.DefaultCellStyle.BackColor = Color.White : 物料清單1_dgv.DefaultCellStyle.ForeColor = Color.Black
  4517. 物料規格1_dgv.EnableHeadersVisualStyles = True : 物料規格1_dgv.BackgroundColor = Color.White : 物料規格1_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4518. 物料規格1_dgv.DefaultCellStyle.BackColor = Color.White : 物料規格1_dgv.DefaultCellStyle.ForeColor = Color.Black
  4519. BOM表控制_dgv.EnableHeadersVisualStyles = True : BOM表控制_dgv.BackgroundColor = Color.White : BOM表控制_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4520. BOM表控制_dgv.DefaultCellStyle.BackColor = Color.White : BOM表控制_dgv.DefaultCellStyle.ForeColor = Color.Black
  4521. BOM表明細_dgv.EnableHeadersVisualStyles = True : BOM表明細_dgv.BackgroundColor = Color.White : BOM表明細_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4522. BOM表明細_dgv.DefaultCellStyle.BackColor = Color.White : BOM表明細_dgv.DefaultCellStyle.ForeColor = Color.Black
  4523. 合約1_dgv.EnableHeadersVisualStyles = True : 合約1_dgv.BackgroundColor = Color.White : 合約1_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4524. 合約1_dgv.DefaultCellStyle.BackColor = Color.White : 合約1_dgv.DefaultCellStyle.ForeColor = Color.Black
  4525. 報價明細表2_dgv.EnableHeadersVisualStyles = True : 報價明細表2_dgv.BackgroundColor = Color.White : 報價明細表2_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  4526. 報價明細表2_dgv.DefaultCellStyle.BackColor = Color.White : 報價明細表2_dgv.DefaultCellStyle.ForeColor = Color.Black
  4527. Else
  4528. Me.BackColor = Color.Black : 新式_P.BackColor = Color.Black : 主頁_p.BackColor = Color.Black : 次頁_p.BackColor = Color.Black : 物料_p.BackColor = Color.Black
  4529. 物料清單_P.BackColor = Color.Black : BOM_p.BackColor = Color.Black : 合約_p.BackColor = Color.Black : 工程合約試算表_tc.BackColor = Color.Black
  4530. 工程合約報價明細_tc.BackColor = Color.Black
  4531. 視窗2_pl.BackColor = Color.DimGray : Panel3.BackColor = Color.Black : 總表空間_P.BackColor = Color.Black
  4532. TabPage1.BackColor = Color.Black : TabPage2.BackColor = Color.Black : 建立合約資料_tc.BackColor = Color.Black : 基本資料_P.BackColor = Color.Black
  4533. 視窗3_pl.BackColor = Color.DimGray : Panel4.BackColor = Color.Black
  4534. '----------------黑-------------------------------------------
  4535. Label85.ForeColor = Color.White : Label84.ForeColor = Color.White : 帶上歷史單價1_ch.ForeColor = Color.White : Label49.ForeColor = Color.White
  4536. Label50.ForeColor = Color.White : 帶上歷史單價_ch.ForeColor = Color.White : 小間距_ch.ForeColor = Color.White : 中間距_ch.ForeColor = Color.White
  4537. 大間距_ch.ForeColor = Color.White : 詳細資料1_ch.ForeColor = Color.White
  4538. Label52.ForeColor = Color.White : Label51.ForeColor = Color.White : 詳細資料_ch.ForeColor = Color.White : Label78.ForeColor = Color.White
  4539. Label77.ForeColor = Color.White : Label1.ForeColor = Color.White : Label3.ForeColor = Color.White : 料號_lb.ForeColor = Color.White
  4540. 詳細資料3_ch.ForeColor = Color.White : 直接輸入_ch.ForeColor = Color.White : Label4.ForeColor = Color.White : 使用計算機_ch.ForeColor = Color.White
  4541. 詳細資料2_ch.ForeColor = Color.White : 啟用批量選擇_ch.ForeColor = Color.White
  4542. 材料_ch.ForeColor = Color.White : 工資_ch.ForeColor = Color.White : 利潤表_ch.ForeColor = Color.White
  4543. Label16.ForeColor = Color.White : 待送報價_ch.ForeColor = Color.White : 待審報價_ch.ForeColor = Color.White
  4544. 報價放行_ch.ForeColor = Color.White : 作廢報價_ch.ForeColor = Color.White : Label7.ForeColor = Color.White : Label28.ForeColor = Color.White
  4545. Label5.ForeColor = Color.White : Label379.ForeColor = Color.White : Label35.ForeColor = Color.White : Label15.ForeColor = Color.White
  4546. Label20.ForeColor = Color.White : 合約停止_ch.ForeColor = Color.White : 美金_ch.ForeColor = Color.White : 人民幣_ch.ForeColor = Color.White
  4547. 台幣_ch.ForeColor = Color.White : 印尼盾_ch.ForeColor = Color.White : Label380.ForeColor = Color.White : Label64.ForeColor = Color.White
  4548. Label70.ForeColor = Color.White : Label68.ForeColor = Color.White : 報價簽回_ch.ForeColor = Color.White : 合約簽回_ch.ForeColor = Color.White
  4549. 小間距1_ch.ForeColor = Color.White : 中間距1_ch.ForeColor = Color.White : 大間距1_ch.ForeColor = Color.White : 不計_ch.ForeColor = Color.White
  4550. Label75.ForeColor = Color.White : Label32.ForeColor = Color.White : Label22.ForeColor = Color.White
  4551. '----------------紅-------------------------------------------
  4552. 群組編碼_lb.ForeColor = Color.LightPink : Label27.ForeColor = Color.LightPink : Label26.ForeColor = Color.LightPink
  4553. Label6.ForeColor = Color.LightPink : Label8.ForeColor = Color.LightPink : Label9.ForeColor = Color.LightPink
  4554. Label53.ForeColor = Color.LightPink : 稅前歸零_ch.ForeColor = Color.LightPink : 稅後歸零_ch.ForeColor = Color.LightPink : Label81.ForeColor = Color.LightPink
  4555. Label69.ForeColor = Color.LightPink : Label63.ForeColor = Color.LightPink : Label58.ForeColor = Color.LightPink : Label55.ForeColor = Color.LightPink
  4556. Label54.ForeColor = Color.LightPink : Label378.ForeColor = Color.LightPink : Label375.ForeColor = Color.LightPink : Label374.ForeColor = Color.LightPink
  4557. Label373.ForeColor = Color.LightPink : Label404.ForeColor = Color.LightPink : Label405.ForeColor = Color.LightPink : Label29.ForeColor = Color.LightPink
  4558. '----------------藍-------------------------------------------
  4559. Label73.ForeColor = Color.LightBlue : Label74.ForeColor = Color.LightBlue : Label24.ForeColor = Color.LightBlue : Label25.ForeColor = Color.LightBlue
  4560. 中文大寫1_ch.ForeColor = Color.LightBlue : 中文小寫1_ch.ForeColor = Color.LightBlue : 數字1_ch.ForeColor = Color.LightBlue : Label30.ForeColor = Color.LightBlue
  4561. Label45.ForeColor = Color.LightBlue : Label31.ForeColor = Color.LightBlue : Label82.ForeColor = Color.LightBlue : Label39.ForeColor = Color.LightBlue
  4562. Label40.ForeColor = Color.LightBlue : Label376.ForeColor = Color.LightBlue : Label377.ForeColor = Color.LightBlue : Label66.ForeColor = Color.LightBlue
  4563. Label65.ForeColor = Color.LightBlue : Label57.ForeColor = Color.LightBlue : Label60.ForeColor = Color.LightBlue : Label71.ForeColor = Color.LightBlue
  4564. Label13.ForeColor = Color.LightBlue : Label18.ForeColor = Color.LightBlue : Label14.ForeColor = Color.LightBlue : Label88.ForeColor = Color.LightBlue
  4565. Label93.ForeColor = Color.LightBlue
  4566. '----------------綠-------------------------------------------
  4567. Label23.ForeColor = Color.LawnGreen : 座標_lb.ForeColor = Color.LawnGreen : 工材分離_ch.ForeColor = Color.LawnGreen : Label80.ForeColor = Color.LawnGreen
  4568. Label83.ForeColor = Color.LawnGreen : Label79.ForeColor = Color.LawnGreen : CH1.ForeColor = Color.LawnGreen : 稅額顯示_lb.ForeColor = Color.LawnGreen
  4569. CH2.ForeColor = Color.LawnGreen : Label390.ForeColor = Color.LawnGreen : Label389.ForeColor = Color.LawnGreen : Label388.ForeColor = Color.LawnGreen
  4570. Label387.ForeColor = Color.LawnGreen : Label386.ForeColor = Color.LawnGreen : Label21.ForeColor = Color.LawnGreen : Label391.ForeColor = Color.LawnGreen
  4571. Label393.ForeColor = Color.LawnGreen : Label394.ForeColor = Color.LawnGreen : Label396.ForeColor = Color.LawnGreen : Label395.ForeColor = Color.LawnGreen
  4572. Label42.ForeColor = Color.LawnGreen : Label410.ForeColor = Color.LawnGreen : Label408.ForeColor = Color.LawnGreen : Label412.ForeColor = Color.LawnGreen
  4573. Label413.ForeColor = Color.LawnGreen : Label414.ForeColor = Color.LawnGreen : Label62.ForeColor = Color.LawnGreen : Label61.ForeColor = Color.LawnGreen
  4574. Label59.ForeColor = Color.LawnGreen : Label67.ForeColor = Color.LawnGreen : Label36.ForeColor = Color.LawnGreen : 座標1_lb.ForeColor = Color.LawnGreen
  4575. Label90.ForeColor = Color.LawnGreen : Label76.ForeColor = Color.LawnGreen
  4576. '--紫--
  4577. Label89.ForeColor = Color.Violet : Label87.ForeColor = Color.Violet : Label91.ForeColor = Color.Violet
  4578. Label86.ForeColor = Color.Violet
  4579. '---大便色---
  4580. Label33.ForeColor = Color.White : Label19.ForeColor = Color.White : Label94.ForeColor = Color.White
  4581. 語轉扭_bt.BackColor = Color.DimGray : 語轉扭_bt.ForeColor = Color.White : 最後採購日1_tb.BackColor = Color.DimGray : 最後採購日1_tb.ForeColor = Color.White
  4582. 合約編號1_cb.BackColor = Color.DimGray : 合約編號1_cb.ForeColor = Color.White : 主項目_tb.BackColor = Color.DimGray : 主項目_tb.ForeColor = Color.White
  4583. 最後採購日_tb.BackColor = Color.DimGray : 最後採購日_tb.ForeColor = Color.White : 歷史單價1_tb.BackColor = Color.DimGray : 歷史單價1_tb.ForeColor = Color.White
  4584. 歷史單價_tb.BackColor = Color.DimGray : 歷史單價_tb.ForeColor = Color.White : 搜尋_bt.BackColor = Color.DimGray : 搜尋_bt.ForeColor = Color.White
  4585. 新群組1_cb.BackColor = Color.DimGray : 新群組1_cb.ForeColor = Color.White : ITEM4_cb.BackColor = Color.DimGray : ITEM4_cb.ForeColor = Color.White
  4586. 關鍵字搜尋1_tb.BackColor = Color.DimGray : 關鍵字搜尋1_tb.ForeColor = Color.White : 合約編號2_cb.BackColor = Color.DimGray : 合約編號2_cb.ForeColor = Color.White
  4587. 合約編號_1_tb.BackColor = Color.DimGray : 合約編號_1_tb.ForeColor = Color.White : 係數_nud.BackColor = Color.DimGray : 係數_nud.ForeColor = Color.White
  4588. 料號1_tb.BackColor = Color.DimGray : 料號1_tb.ForeColor = Color.White : 樓層_迴路_cb.BackColor = Color.DimGray : 樓層_迴路_cb.ForeColor = Color.White
  4589. 係數項目_cb.BackColor = Color.DimGray : 係數項目_cb.ForeColor = Color.White
  4590. 係數單位_cb.BackColor = Color.DimGray : 係數單位_cb.ForeColor = Color.White
  4591. 報價單合約編號_tb.BackColor = Color.DimGray : 報價單合約編號_tb.ForeColor = Color.White : 報價單客戶名稱_cb.BackColor = Color.DimGray : 報價單客戶名稱_cb.ForeColor = Color.White
  4592. 報價工程名稱_中_tb.BackColor = Color.DimGray : 報價工程名稱_中_tb.ForeColor = Color.White : 報價工程名稱_英_tb.BackColor = Color.DimGray : 報價工程名稱_英_tb.ForeColor = Color.White
  4593. ITEM3_cb.BackColor = Color.DimGray : ITEM3_cb.ForeColor = Color.White : 係數範本_tb.BackColor = Color.DimGray : 係數範本_tb.ForeColor = Color.White
  4594. 單位2_tb.BackColor = Color.DimGray : 單位2_tb.ForeColor = Color.White : 係數存檔_bt.BackColor = Color.DimGray : 係數存檔_bt.ForeColor = Color.White
  4595. 申請數_nud.BackColor = Color.DimGray : 申請數_nud.ForeColor = Color.White : 縮放_bt.BackColor = Color.DimGray : 縮放_bt.ForeColor = Color.White
  4596. 料號_tb.BackColor = Color.DimGray : 料號_tb.ForeColor = Color.White : 單位_tb.BackColor = Color.DimGray : 單位_tb.ForeColor = Color.White
  4597. 數量_tb.BackColor = Color.DimGray : 數量_tb.ForeColor = Color.White : 內容_tb.BackColor = Color.DimGray : 內容_tb.ForeColor = Color.White
  4598. 備註_tb.BackColor = Color.DimGray : 備註_tb.ForeColor = Color.White : 合計項_cb.BackColor = Color.DimGray : 合計項_cb.ForeColor = Color.White
  4599. 報價說明_tb.BackColor = Color.DimGray : 報價說明_tb.ForeColor = Color.White : 關鍵字搜尋_tb.BackColor = Color.DimGray : 關鍵字搜尋_tb.ForeColor = Color.White
  4600. 合約編號清單_bt.BackColor = Color.DimGray : 合約編號清單_bt.ForeColor = Color.White : 合約編號_cb.BackColor = Color.DimGray : 合約編號_cb.ForeColor = Color.White
  4601. 合約編號1_tb.BackColor = Color.DimGray : 合約編號1_tb.ForeColor = Color.White : 合約編號2_tb.BackColor = Color.DimGray : 合約編號2_tb.ForeColor = Color.White
  4602. 合約編號3_tb.BackColor = Color.DimGray : 合約編號3_tb.ForeColor = Color.White : 自動讀取_bt.BackColor = Color.DimGray : 自動讀取_bt.ForeColor = Color.White
  4603. 手動輸入_bt.BackColor = Color.DimGray : 手動輸入_bt.ForeColor = Color.White : 最末頁_cb.BackColor = Color.DimGray : 最末頁_cb.ForeColor = Color.White
  4604. 合約種類_cb.BackColor = Color.DimGray : 合約種類_cb.ForeColor = Color.White : 合約種類_tb.BackColor = Color.DimGray : 合約種類_tb.ForeColor = Color.White
  4605. 客戶名稱_tb.BackColor = Color.DimGray : 客戶名稱_tb.ForeColor = Color.White : 負責人_A_cb.BackColor = Color.DimGray : 負責人_A_cb.ForeColor = Color.White
  4606. 工程地點_tb.BackColor = Color.DimGray : 工程地點_tb.ForeColor = Color.White : 客戶地址_tb.BackColor = Color.DimGray : 客戶地址_tb.ForeColor = Color.White
  4607. 工程名稱_中_tb.BackColor = Color.DimGray : 工程名稱_中_tb.ForeColor = Color.White : 工程名稱_英_tb.BackColor = Color.DimGray : 工程名稱_英_tb.ForeColor = Color.White
  4608. 選擇公司_cb.BackColor = Color.DimGray : 選擇公司_cb.ForeColor = Color.White : 負責人_B_cb.BackColor = Color.DimGray : 負責人_B_cb.ForeColor = Color.White
  4609. 我司地址_tb.BackColor = Color.DimGray : 我司地址_tb.ForeColor = Color.White : NUD1.BackColor = Color.DimGray : NUD1.ForeColor = Color.White
  4610. NUD2.BackColor = Color.DimGray : NUD2.ForeColor = Color.White : NUD3.BackColor = Color.DimGray : NUD3.ForeColor = Color.White
  4611. 工程款1_nud.BackColor = Color.DimGray : 工程款1_nud.ForeColor = Color.White : 工程款2_nud.BackColor = Color.DimGray : 工程款2_nud.ForeColor = Color.White
  4612. 工程款3_nud.BackColor = Color.DimGray : 工程款3_nud.ForeColor = Color.White : 工程款4_nud.BackColor = Color.DimGray : 工程款4_nud.ForeColor = Color.White
  4613. 工程款5_nud.BackColor = Color.DimGray : 工程款5_nud.ForeColor = Color.White : 工程款6_nud.BackColor = Color.DimGray : 工程款6_nud.ForeColor = Color.White
  4614. 金額1_und.BackColor = Color.DimGray : 金額1_und.ForeColor = Color.White : 金額2_und.BackColor = Color.DimGray : 金額2_und.ForeColor = Color.White
  4615. 金額3_und.BackColor = Color.DimGray : 金額3_und.ForeColor = Color.White : 金額4_und.BackColor = Color.DimGray : 金額4_und.ForeColor = Color.White
  4616. 金額5_und.BackColor = Color.DimGray : 金額5_und.ForeColor = Color.White : 金額6_und.BackColor = Color.DimGray : 金額6_und.ForeColor = Color.White
  4617. 工期_nud.BackColor = Color.DimGray : 工期_nud.ForeColor = Color.White : 逾期_bt.BackColor = Color.DimGray : 逾期_bt.ForeColor = Color.White
  4618. 最高扣款_bt.BackColor = Color.DimGray : 最高扣款_bt.ForeColor = Color.White : 逾期_英_bt.BackColor = Color.DimGray : 逾期_英_bt.ForeColor = Color.White
  4619. 最高扣款_英_bt.BackColor = Color.DimGray : 最高扣款_英_bt.ForeColor = Color.White : 減價_bt.BackColor = Color.DimGray : 減價_bt.ForeColor = Color.White
  4620. 廠區_中文_tb.BackColor = Color.DimGray : 廠區_中文_tb.ForeColor = Color.White : 頁數_bt.BackColor = Color.DimGray : 頁數_bt.ForeColor = Color.White
  4621. 預估工資總成本_tb.BackColor = Color.DimGray : 預估工資總成本_tb.ForeColor = Color.White : 預估材料總成本_tb.BackColor = Color.DimGray : 預估材料總成本_tb.ForeColor = Color.White
  4622. 總成本_tb.BackColor = Color.DimGray : 總成本_tb.ForeColor = Color.White : 預估工資總報價_tb.BackColor = Color.DimGray : 預估工資總報價_tb.ForeColor = Color.White
  4623. 預估材料總報價_tb.BackColor = Color.DimGray : 預估材料總報價_tb.ForeColor = Color.White : 總報價_tb.BackColor = Color.DimGray : 總報價_tb.ForeColor = Color.White
  4624. 預估利潤_tb.BackColor = Color.DimGray : 預估利潤_tb.ForeColor = Color.White : 利潤比1_tb.BackColor = Color.DimGray : 利潤比1_tb.ForeColor = Color.White
  4625. 利潤比2_tb.BackColor = Color.DimGray : 利潤比2_tb.ForeColor = Color.White : 利潤比3_tb.BackColor = Color.DimGray : 利潤比3_tb.ForeColor = Color.White
  4626. 利潤比4_tb.BackColor = Color.DimGray : 利潤比4_tb.ForeColor = Color.White : 選擇項1_tb.BackColor = Color.DimGray : 選擇項1_tb.ForeColor = Color.White
  4627. 單位1_tb.BackColor = Color.DimGray : 單位1_tb.ForeColor = Color.White : 內容1_tb.BackColor = Color.DimGray : 內容1_tb.ForeColor = Color.White
  4628. 備註1_tb.BackColor = Color.DimGray : 備註1_tb.ForeColor = Color.White : 地點_中_tb.BackColor = Color.DimGray : 地點_中_tb.ForeColor = Color.White
  4629. 地點_印_tb.BackColor = Color.DimGray : 地點_印_tb.ForeColor = Color.White : 主項_中_cb.BackColor = Color.DimGray : 主項_中_cb.ForeColor = Color.White
  4630. 主項_印_cb.BackColor = Color.DimGray : 主項_印_cb.ForeColor = Color.White : 主名_中_cb.BackColor = Color.DimGray : 主名_中_cb.ForeColor = Color.White
  4631. 主名_印_cb.BackColor = Color.DimGray : 主名_印_cb.ForeColor = Color.White : 項名_中_cb.BackColor = Color.DimGray : 項名_中_cb.ForeColor = Color.White
  4632. 項名_印_cb.BackColor = Color.DimGray : 項名_印_cb.ForeColor = Color.White : 描述_中_cb.BackColor = Color.DimGray : 描述_中_cb.ForeColor = Color.White
  4633. 描述_印_cb.BackColor = Color.DimGray : 描述_印_cb.ForeColor = Color.White : 關鍵字_tb.BackColor = Color.DimGray : 關鍵字_tb.ForeColor = Color.White
  4634. 其他_中_cb.BackColor = Color.DimGray : 其他_中_cb.ForeColor = Color.White : 其他_印_cb.BackColor = Color.DimGray : 其他_印_cb.ForeColor = Color.White
  4635. 實際數量_nud.BackColor = Color.DimGray : 實際數量_nud.ForeColor = Color.White : 工資成本_nud.BackColor = Color.DimGray : 工資成本_nud.ForeColor = Color.White
  4636. 材料成本_nud.BackColor = Color.DimGray : 材料成本_nud.ForeColor = Color.White : 工資單價_cb.BackColor = Color.DimGray : 工資單價_cb.ForeColor = Color.White
  4637. 工資系數_cb.BackColor = Color.DimGray : 工資系數_cb.ForeColor = Color.White : 係數清單_cb.BackColor = Color.DimGray : 係數清單_cb.ForeColor = Color.White
  4638. 試算表_cb.BackColor = Color.DimGray : 試算表_cb.ForeColor = Color.LightBlue : 選擇項_tb.BackColor = Color.DimGray : 選擇項_tb.ForeColor = Color.LightBlue
  4639. 文字資料輸入1_bt.BackColor = Color.DimGray : 文字資料輸入1_bt.ForeColor = Color.LightBlue : GroupBox2.BackColor = Color.DimGray : GroupBox2.ForeColor = Color.LightBlue
  4640. ITEM1_cb.BackColor = Color.DimGray : ITEM1_cb.ForeColor = Color.LightBlue : 未折價前_tb.BackColor = Color.DimGray : 未折價前_tb.ForeColor = Color.LightBlue
  4641. 報價小計_tb.BackColor = Color.DimGray : 報價小計_tb.ForeColor = Color.LightBlue : 文字資料輸入2_bt.BackColor = Color.DimGray : 文字資料輸入2_bt.ForeColor = Color.LightBlue
  4642. ITEM2_cb.BackColor = Color.DimGray : ITEM2_cb.ForeColor = Color.LightBlue : 合計項1_cb.BackColor = Color.DimGray : 合計項1_cb.ForeColor = Color.LightBlue
  4643. GroupBox3.BackColor = Color.Black : GroupBox3.ForeColor = Color.LightBlue
  4644. 全部選擇_bt.BackColor = Color.DimGray : 全部選擇_bt.ForeColor = Color.LightYellow : 全部取消_bt.BackColor = Color.DimGray : 全部取消_bt.ForeColor = Color.LightYellow
  4645. 上移2_bt.BackColor = Color.DimGray : 下移2_bt.BackColor = Color.DimGray : 新增資料3_bt.BackColor = Color.DimGray : 明細表選擇刪除2_bt.BackColor = Color.DimGray
  4646. 歸零位數_nud.BackColor = Color.DimGray : 歸零位數_nud.ForeColor = Color.LightPink
  4647. 甲方_cb.BackColor = Color.DimGray : 甲方_cb.ForeColor = Color.LawnGreen : 折讓比例_nud.BackColor = Color.DimGray : 折讓比例_nud.ForeColor = Color.LawnGreen
  4648. TB_1.BackColor = Color.Black : TB_1.ForeColor = Color.White : TB_2.BackColor = Color.Black : TB_2.ForeColor = Color.White
  4649. TB_3.BackColor = Color.Black : TB_3.ForeColor = Color.White : TB_4.BackColor = Color.Black : TB_4.ForeColor = Color.White
  4650. TB_5.BackColor = Color.Black : TB_5.ForeColor = Color.White : TB_6.BackColor = Color.Black : TB_6.ForeColor = Color.White
  4651. TB_7.BackColor = Color.Black : TB_7.ForeColor = Color.White : TB_8.BackColor = Color.Black : TB_8.ForeColor = Color.White
  4652. TB_9.BackColor = Color.Black : TB_9.ForeColor = Color.White : TB_10.BackColor = Color.Black : TB_10.ForeColor = Color.White
  4653. TB_11.BackColor = Color.Black : TB_11.ForeColor = Color.White : TB_12.BackColor = Color.Black : TB_12.ForeColor = Color.White
  4654. TB_13.BackColor = Color.Black : TB_13.ForeColor = Color.White : TB_14.BackColor = Color.Black : TB_14.ForeColor = Color.White
  4655. TB_15.BackColor = Color.Black : TB_15.ForeColor = Color.White : TB_16.BackColor = Color.Black : TB_16.ForeColor = Color.White
  4656. TB_17.BackColor = Color.Black : TB_17.ForeColor = Color.White : TB_18.BackColor = Color.Black : TB_18.ForeColor = Color.White
  4657. TB_19.BackColor = Color.Black : TB_19.ForeColor = Color.White : TB_20.BackColor = Color.Black : TB_20.ForeColor = Color.White
  4658. TB_21.BackColor = Color.Black : TB_21.ForeColor = Color.White
  4659. PB_1.BackColor = Color.DimGray : PB_2.BackColor = Color.DimGray : PB_3.BackColor = Color.DimGray : PB_4.BackColor = Color.DimGray : PB_5.BackColor = Color.DimGray
  4660. PB_6.BackColor = Color.DimGray : PB_7.BackColor = Color.DimGray : PB_8.BackColor = Color.DimGray : PB_9.BackColor = Color.DimGray : PB_10.BackColor = Color.DimGray
  4661. PB_11.BackColor = Color.DimGray : PB_12.BackColor = Color.DimGray : PB_13.BackColor = Color.DimGray : PB_14.BackColor = Color.DimGray : PB_15.BackColor = Color.DimGray
  4662. PB_16.BackColor = Color.DimGray : PB_17.BackColor = Color.DimGray : PB_18.BackColor = Color.DimGray : PB_19.BackColor = Color.DimGray : PB_20.BackColor = Color.DimGray
  4663. PB_21.BackColor = Color.DimGray
  4664. 查詢_bt.BackColor = Color.DimGray : 縮放1_bt.BackColor = Color.DimGray : 縮放2_bt.BackColor = Color.DimGray : 查閱文件_bt.BackColor = Color.DimGray
  4665. 合約改版_bt.BackColor = Color.DimGray : 合約作廢_bt.BackColor = Color.DimGray : 刪除合約_bt.BackColor = Color.DimGray : 發送_bt.BackColor = Color.DimGray
  4666. 存檔_tb.BackColor = Color.DimGray : 回首頁_bt.BackColor = Color.DimGray : 回次頁_bt.BackColor = Color.DimGray : BOM新增到明細表_bt.BackColor = Color.DimGray
  4667. 選取資料新增到明細表_bt.BackColor = Color.DimGray : 查詢1_bt.BackColor = Color.DimGray : 新增試算表_bt.BackColor = Color.DimGray : 新增物件_bt.BackColor = Color.DimGray
  4668. 修改試算表名稱_bt.BackColor = Color.DimGray : 修改樓層_迴圈_bt.BackColor = Color.DimGray : 材料加入1_bt.BackColor = Color.DimGray : 存檔_bt.BackColor = Color.DimGray
  4669. 刪除1_bt.BackColor = Color.DimGray
  4670. 修改明細表上的材料指定_bt.BackColor = Color.DimGray : 排序2_bt.BackColor = Color.DimGray : 規格顯示修改_bt.BackColor = Color.DimGray : 新增資料2_bt.BackColor = Color.DimGray
  4671. 選擇材料新增到明細表_bt.BackColor = Color.DimGray : 報價明細表存檔_bt.BackColor = Color.DimGray : 明細表編輯_bt.BackColor = Color.DimGray : 總表選擇刪除1_bt.BackColor = Color.DimGray
  4672. 排序1_bt.BackColor = Color.DimGray : 新增資料1_bt.BackColor = Color.DimGray : 報價總表存檔_bt.BackColor = Color.DimGray : 列印成EXCEL_bt.BackColor = Color.DimGray
  4673. 折價計算_bt.BackColor = Color.DimGray : 查詢_bt.BackColor = Color.DimGray : 彙總存檔_bt.BackColor = Color.DimGray : 上移_bt.BackColor = Color.DimGray : 下移_bt.BackColor = Color.DimGray
  4674. 上移1_bt.BackColor = Color.DimGray : 下移1_bt.BackColor = Color.DimGray
  4675. 報價明細表_dgv.EnableHeadersVisualStyles = False : 報價明細表_dgv.BackgroundColor = Color.DimGray : 報價明細表_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4676. 報價明細表_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 報價明細表_dgv.DefaultCellStyle.BackColor = Color.Black : 報價明細表_dgv.DefaultCellStyle.ForeColor = Color.White
  4677. 報價總表_dgv.EnableHeadersVisualStyles = False : 報價總表_dgv.BackgroundColor = Color.DimGray : 報價總表_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4678. 報價總表_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 報價總表_dgv.DefaultCellStyle.BackColor = Color.Black : 報價總表_dgv.DefaultCellStyle.ForeColor = Color.White
  4679. 試算表_dgv.EnableHeadersVisualStyles = False : 試算表_dgv.BackgroundColor = Color.DimGray : 試算表_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4680. 試算表_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 試算表_dgv.DefaultCellStyle.BackColor = Color.Black : 試算表_dgv.DefaultCellStyle.ForeColor = Color.White
  4681. 報價係數_dgv.EnableHeadersVisualStyles = False : 報價係數_dgv.BackgroundColor = Color.DimGray : 報價係數_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4682. 報價係數_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 報價係數_dgv.DefaultCellStyle.BackColor = Color.Black : 報價係數_dgv.DefaultCellStyle.ForeColor = Color.White
  4683. 報價係數1_dgv.EnableHeadersVisualStyles = False : 報價係數1_dgv.BackgroundColor = Color.DimGray : 報價係數1_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4684. 報價係數1_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 報價係數1_dgv.DefaultCellStyle.BackColor = Color.Black : 報價係數1_dgv.DefaultCellStyle.ForeColor = Color.White
  4685. 報價明細表1_dgv.EnableHeadersVisualStyles = False : 報價明細表1_dgv.BackgroundColor = Color.DimGray : 報價明細表1_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4686. 報價明細表1_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 報價明細表1_dgv.DefaultCellStyle.BackColor = Color.Black : 報價明細表1_dgv.DefaultCellStyle.ForeColor = Color.White
  4687. 報價明細表3_dgv.EnableHeadersVisualStyles = False : 報價明細表3_dgv.BackgroundColor = Color.DimGray : 報價明細表3_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4688. 報價明細表3_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 報價明細表3_dgv.DefaultCellStyle.BackColor = Color.Black : 報價明細表3_dgv.DefaultCellStyle.ForeColor = Color.White
  4689. 合約_dgv.EnableHeadersVisualStyles = False : 合約_dgv.BackgroundColor = Color.DimGray : 合約_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4690. 合約_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 合約_dgv.DefaultCellStyle.BackColor = Color.Black : 合約_dgv.DefaultCellStyle.ForeColor = Color.White
  4691. 物料清單_dgv.EnableHeadersVisualStyles = False : 物料清單_dgv.BackgroundColor = Color.DimGray : 物料清單_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4692. 物料清單_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 物料清單_dgv.DefaultCellStyle.BackColor = Color.Black : 物料清單_dgv.DefaultCellStyle.ForeColor = Color.White
  4693. 物料規格_dgv.EnableHeadersVisualStyles = False : 物料規格_dgv.BackgroundColor = Color.DimGray : 物料規格_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4694. 物料規格_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 物料規格_dgv.DefaultCellStyle.BackColor = Color.Black : 物料規格_dgv.DefaultCellStyle.ForeColor = Color.White
  4695. 物料清單1_dgv.EnableHeadersVisualStyles = False : 物料清單1_dgv.BackgroundColor = Color.DimGray : 物料清單1_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4696. 物料清單1_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 物料清單1_dgv.DefaultCellStyle.BackColor = Color.Black : 物料清單1_dgv.DefaultCellStyle.ForeColor = Color.White
  4697. 物料規格1_dgv.EnableHeadersVisualStyles = False : 物料規格1_dgv.BackgroundColor = Color.DimGray : 物料規格1_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4698. 物料規格1_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 物料規格1_dgv.DefaultCellStyle.BackColor = Color.Black : 物料規格1_dgv.DefaultCellStyle.ForeColor = Color.White
  4699. BOM表控制_dgv.EnableHeadersVisualStyles = False : BOM表控制_dgv.BackgroundColor = Color.DimGray : BOM表控制_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4700. BOM表控制_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : BOM表控制_dgv.DefaultCellStyle.BackColor = Color.Black : BOM表控制_dgv.DefaultCellStyle.ForeColor = Color.White
  4701. BOM表明細_dgv.EnableHeadersVisualStyles = False : BOM表明細_dgv.BackgroundColor = Color.DimGray : BOM表明細_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4702. BOM表明細_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : BOM表明細_dgv.DefaultCellStyle.BackColor = Color.Black : BOM表明細_dgv.DefaultCellStyle.ForeColor = Color.White
  4703. 合約1_dgv.EnableHeadersVisualStyles = False : 合約1_dgv.BackgroundColor = Color.DimGray : 合約1_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4704. 合約1_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 合約1_dgv.DefaultCellStyle.BackColor = Color.Black : 合約1_dgv.DefaultCellStyle.ForeColor = Color.White
  4705. 報價明細表2_dgv.EnableHeadersVisualStyles = False : 報價明細表2_dgv.BackgroundColor = Color.DimGray : 報價明細表2_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  4706. 報價明細表2_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 報價明細表2_dgv.DefaultCellStyle.BackColor = Color.Black : 報價明細表2_dgv.DefaultCellStyle.ForeColor = Color.White
  4707. End If
  4708. End Sub
  4709. End Class