|
: 29.09.11 15:04. : Pyru ru..
Pyru ru}! It~z u{ {tp Export:={} Aadd(Export,{"Code_Uprav","C",4,0}) Aadd(Export,{"Name_Uprav","C",20,0}) Aadd(Export,{"Name_Oil","C",10,0}) Aadd(Export,{"Ostat_N_Lt","N",13,2}) Aadd(Export,{"Ostat_N_Kg","N",13,2}) Aadd(Export,{"Prixod_Lt","N",13,2}) Aadd(Export,{"Plotnost","N",13,4}) Aadd(Export,{"Prixod_Kg","N",13,2}) Aadd(Export,{"Rasxod_Lt","N",13,2}) Aadd(Export,{"Rasxod_Kg","N",13,2}) Aadd(Export,{"Ostat_K_Lt","N",13,2}) Aadd(Export,{"Ostat_K_Kg","N",13,2}) Aadd(Export,{"Cena","N",6,2}) Aadd(Export,{"Fakt_N_lt","N",13,2}) Aadd(Export,{"Fakt_N_Kg","N",13,2}) Aadd(Export,{"Fakt_K_Lt","N",13,2}) Aadd(Export,{"Fakt_K_Kg","N",13,2}) Aadd(Export,{"Vdm_Lt","N",13,2}) Aadd(Export,{"Krt_Lt","N",13,2}) Aadd(Export,{"Ala_Lt","N",13,2}) Aadd(Export,{"Fgr_Lt","N",13,2}) Aadd(Export,{"Pro_Lt","N",13,2}) Aadd(Export,{"Kassa","N",13,2}) Aadd(Export,{"Delta_1","N",13,2}) Aadd(Export,{"Delta_2","N",13,2}) Aadd(Export,{"Vdm_Kg","N",13,2}) Aadd(Export,{"Krt_Kg","N",13,2}) Aadd(Export,{"Ala_Kg","N",13,2}) Aadd(Export,{"Fgr_Kg","N",13,2}) Aadd(Export,{"Data1","D",12,0}) Aadd(Export,{"Data2","D",12,0}) Aadd(Export,{"Record","N",12,0}) Aadd(Export,{"Recoil","N",3,0}) File_Ex:='01_Table' Net_Use(200,(Mar4+File_Ex),'Ex_Dbf',1,1) Index On Code_Uprav To (Mar4+'01_Table.Cdx') Set Index To (Mar4+'01_Table.Cdx') Select OILTYPE Count To Rc_OilKol For Type_Oil==1 Select DATAGSM Set Relation To Code_Oil Into OILTYPE Set Relation To Code_Uprav Into OFFICE Additive Select OFFICE Count To Kol_Lc For Type_Uprav==1 Kolf_Ntx:=Kol_Lc Kolf_Prc:=0 Set Order To 1 Set Filter To Type_Uprav==1 DbGoTop() Do While !Eof() Rec_Off:=Recno() Kode_Uprav:=Code_Uprav Ip_Movet(Padr('hIsrz u N '+Code_Uprav,69),Dy_15) Day_Azs1() Select OFFICE Set Order To 1 Goto Rec_Off Skip Enddo Set Filter To Select EX_DBF Pack Rc_Export:=Reccount() Repl All Record With Rc_Export,Recoil With Rc_OilKol Use Xls_File:=Mar4+File_Ex Dbf_File:=Mar4+File_Ex Xls_Copy:=Mar12+File_Ex Main_file:=Mar10+'Rpt_Azs' oExcel :=ToleAuto():New( "Excel.Application" ) oExcel :Visible := .F. oExcel :Workbooks:Open(Dbf_File) oRange := oExcel:ActiveCell:SpecialCells(xlLastCell) cRecno :=oRange:Row cColumn:=oRange:Column oExcel:Set( "DisplayAlerts",.F.) oAs:= oExcel:ActiveSheet() oAs:Columns(2):Font:Bold := .T. For J_Rec = 4 To cColumn-4 oAs:Columns(J_Rec):NumberFormat:= "# ##0,00;-0,00;" Next oAs:Columns(7):NumberFormat:= "0,0000;;" oAs:Range(oAs:Cells(2,2),oAs:Cells(cRecno,cColumn-4)):Borders(xlEdgeTop):LineStyle:= xlContinuous oAs:Range(oAs:Cells(2,2),oAs:Cells(cRecno,cColumn-4)):Borders(xlEdgeBottom):LineStyle:= xlContinuous oAs:Range(oAs:Cells(2,1),oAs:Cells(cRecno,cColumn-4)):Borders(xlEdgeRight):LineStyle:= xlContinuous oAs:Range(oAs:Cells(2,1),oAs:Cells(cRecno,cColumn-4)):Borders(xlInsideVertical):LineStyle:= xlContinuous oAs:Range(oAs:Cells(2,1),oAs:Cells(cRecno,cColumn-4)):Borders(xlInsideHorizontal):LineStyle:= xlContinuous For I_Rec = 2 To cRecno I_Rec1:=I_Rec-1 If I_Rec1/Rc_OilKol-Int(I_Rec1/Rc_OilKol)==0 I_Rec2:=(Int(I_Rec1/Rc_OilKol)-1)*(Rc_OilKol+1)+2 I_Rec3:=Int(I_Rec1/Rc_OilKol)*(Rc_OilKol+1)+1 I_Rec4:=I_Rec3-1 * If I_Rec3<cRecno oAs:Rows(I_Rec3):Font:Bold:= .T. oAs:Rows(I_Rec3):Interior:ColorIndex = 6 oAs:Rows(I_Rec3):WrapText = .T. oAs:Range(oAs:Cells(I_Rec2,2),oAs:Cells(I_Rec4,2)):Merge() oAs:Range(oAs:Cells(I_Rec2,2),oAs:Cells(I_Rec4,2)):HorizontalAlignment := xlCenter oAs:Range(oAs:Cells(I_Rec2,2),oAs:Cells(I_Rec4,2)):VerticalAlignment:= xlCenter * Endif Endif Next oAs:SaveAs(Xls_Copy,Excel97_10) oAs:Range(oAs:Cells(2,2),oAs:Cells(cRecno,cColumn-4)):Select() oAs:Range(oAs:Cells(2,2),oAs:Cells(cRecno,cColumn-4)):Copy() oExcel:Workbooks:Open(Main_File) oBook := oExcel:ActiveWorkBook oSheet:=oBook:Sheets(1) oAs :=oExcel:ActiveSheet() oAs:Cells(5,1):Select() oAs:Paste() oExcel:CutCopyMode :=.F. oAs:SaveAs(Main_File,Excel97_10) oExcel:Set( "DisplayAlerts",.T.) oExcel:Quit() Xls_Screen() ****************************** Export:={} Aadd(Export,{"Code_Uprav","C",4,0}) Aadd(Export,{"Name_Uprav","C",20,0}) Aadd(Export,{"Name_Oil","C",10,0}) Aadd(Export,{"Prixod_Lt","N",13,2}) Aadd(Export,{"Prixod_Kg","N",13,2}) Aadd(Export,{"Rasxod_Lt","N",13,2}) Aadd(Export,{"Rasxod_Kg","N",13,2}) Aadd(Export,{"Vdm_Lt","N",13,2}) Aadd(Export,{"Krt_Lt","N",13,2}) Aadd(Export,{"Ala_Lt","N",13,2}) Aadd(Export,{"Fgr_Lt","N",13,2}) Aadd(Export,{"Ostatok_Lt","N",13,2}) Aadd(Export,{"Ostatok_Kg","N",13,2}) Aadd(Export,{"Kassa","N",13,2}) Aadd(Export,{"Realnms_Lt","N",13,2}) Aadd(Export,{"Realnmk_Kg","N",13,2}) Aadd(Export,{"Kassanm","N",13,2}) File_Ex:='02_Table' Net_Use(200,(Mar4+File_Ex),'Ex_Dbf',1,1) Select DATAGSM Set Relation To Code_Oil Into OILTYPE Set Relation To Code_Uprav Into OFFICE Additive Select OFFICE Set Order To 1 Count To Kol_Lc For Type_Uprav==1 Kolf_Ntx:=Kol_Lc Kolf_Prc:=0 Set Filter To Type_Uprav==1 DbGoTop() Do While !Eof() Rec_Off:=Recno() Kode_Uprav:=Code_Uprav Ip_Movet(Padr('hQpu xp {y ' +Code_Uprav,69),Dy_15) Day_Azs2() Select OFFICE Set Order To 1 Goto Rec_Off Skip Enddo Set Filter To Select EX_DBF Use /// Xls_File:=Mar4+File_Ex Dbf_File:=Mar4+File_Ex Xls_Copy:=Mar12+File_Ex oExcel :=ToleAuto():New( "Excel.Application" ) oExcel :Visible := .F. oExcel :Workbooks:Open(Dbf_File) oRange := oExcel:ActiveCell:SpecialCells(xlLastCell) cRecno :=oRange:Row cColumn:=oRange:Column oExcel:Set( "DisplayAlerts",.F.) oAs:= oExcel:ActiveSheet() oAs:Columns(2):Font:Bold := .T. For J_Rec = 4 To cColumn oAs:Columns(J_Rec):NumberFormat:= "# ##0,00;-0,00;" Next oAs:Range(oAs:Cells(2,2),oAs:Cells(cRecno,cColumn)):Borders(xlEdgeTop):LineStyle:= xlContinuous oAs:Range(oAs:Cells(2,2),oAs:Cells(cRecno,cColumn)):Borders(xlEdgeBottom):LineStyle:= xlContinuous oAs:Range(oAs:Cells(2,1),oAs:Cells(cRecno,cColumn)):Borders(xlEdgeRight):LineStyle:= xlContinuous oAs:Range(oAs:Cells(2,1),oAs:Cells(cRecno,cColumn)):Borders(xlInsideVertical):LineStyle:= xlContinuous oAs:Range(oAs:Cells(2,1),oAs:Cells(cRecno,cColumn)):Borders(xlInsideHorizontal):LineStyle:= xlContinuous For I_Rec = 2 To cRecno I_Rec1:=I_Rec-1 If I_Rec1/Rc_OilKol-Int(I_Rec1/Rc_OilKol)==0 I_Rec2:=(Int(I_Rec1/Rc_OilKol)-1)*(Rc_OilKol+1)+2 I_Rec3:=Int(I_Rec1/Rc_OilKol)*(Rc_OilKol+1)+1 I_Rec4:=I_Rec3-1 * If I_Rec3<cRecno oAs:Rows(I_Rec3):Font:Bold:= .T. oAs:Rows(I_Rec3):Interior:ColorIndex = 6 oAs:Rows(I_Rec3):WrapText = .T. oAs:Range(oAs:Cells(I_Rec2,2),oAs:Cells(I_Rec4,2)):Merge() oAs:Range(oAs:Cells(I_Rec2,2),oAs:Cells(I_Rec4,2)):HorizontalAlignment := xlCenter oAs:Range(oAs:Cells(I_Rec2,2),oAs:Cells(I_Rec4,2)):VerticalAlignment:= xlCenter * Endif Endif Next oAs:SaveAs(Xls_Copy,Excel97_10) oAs:Range(oAs:Cells(2,2),oAs:Cells(cRecno,cColumn)):Select() oAs:Range(oAs:Cells(2,2),oAs:Cells(cRecno,cColumn)):Copy() oExcel:Workbooks:Open(Main_File) oBook := oExcel:ActiveWorkBook oSheet:=oBook:Sheets(2) oAs :=oExcel:ActiveSheet() oAs:Cells(5,1):Select() oAs:Paste() oExcel:CutCopyMode :=.F. oAs:SaveAs(Main_File,Excel97_10) oExcel:Set( "DisplayAlerts",.T.) oExcel:Quit() *Dbf_to_Xls(Mar4+File_Ex,1) Xls_Screen() xptpp y r } tu|p 1. O{ Oqyz pz| up MAIN_FILE }pp XLS, r ~u} ~u{|{ |yr, ~p {pwt} r p{p (sr) 2. sp}}p }yu |{p|~u pz| }pp DBF y uurty y r }p XLS y xpyrpu ~p ty{ (sr) ~w~ tu|p 1. { |{p|~z u XLS 2. {yrp typpx~ uu{ 3. uuzy ~p {pxp~~z |y up MAIN_FILE 4. rpry tp~~u yx |{p|~s up ry . 1 - 3 ~w~u {|yur px ({|{ |yr r uu MAIN_FILE) 5. Hpyp u MAIN_FILE r yrutu~~} y}uu r |y 1 up MAIN_FILE ry|~ uutp tp~~u |{p|~s up '01_Table', r ~p |y2 up MAIN_FILE rpr| tp~~u yx |{p|~s up '01_table' p xpu} ru ~y Ppry|~u tp~~u yx |{p|~s up '02_table'.... ~u x~p {p{ yy qu |u up?yy Ropy() y Paste()??? t}p q|u}p y}u~~ r }. N ~pt yx~: 1 .Oty~ px rt~z u MAIN_FILE 2. P|utrpu|~ {rp |{p|~u u Dbf->XLS 3. Bqyp tp~~u yx |{p|~s up Dbf->XLS 4. Puuzy r rt~z u MAIN_FILE 5. Bqp ~w~z |y 6. Bpry tp~~u yx |{p|~s up Dbf->XLS 7. Oyy qu q}u~p yt | 2-7 8.Hpyp rt~z u MAIN_FILE 9.Dup{yryrp Excel. PS. ~{?yy DAY_AZS1, DAY_AZS2 - pu tp~~ AD y xpy r |{p|~ AD
|