[ nnn @ 16.12.2005. 20:11 ] @
Imam jedan program i jedanu veoma nejasnu gresku. U jednoj od formi imam stringgrid i imam funkciju koja ga exportuje u excel file: Code: function SaveAsExcelFile(AGrid: TStringGrid; AFileName: string): Boolean; const {$J+} CXlsBof: array[0..5] of Word = ($809, 8, 00, $10, 0, 0); {$J-} CXlsEof: array[0..1] of Word = ($0A, 00); var FStream: TFileStream; I, J: Integer; begin Result := False; FStream := TFileStream.Create(PChar(AFileName), fmCreate or fmOpenWrite); try CXlsBof[4] := 0; FStream.WriteBuffer(CXlsBof, SizeOf(CXlsBof)); for i := 0 to AGrid.ColCount - 1 do for j := 0 to AGrid.RowCount - 1 do XlsWriteCellLabel(FStream, I, J, AGrid.cells[i, j]); FStream.WriteBuffer(CXlsEof, SizeOf(CXlsEof)); Result := True; finally FStream.Free; end; end; pozivam je sa ovim: Code: procedure TForm4.exportexel1Click(Sender: TObject); begin SaveDialog1.Execute; if SaveDialog1.FileName='' then else if SaveAsExcelFile(Grid,SaveDialog1.FileName) then begin ShowMessage('Dokument je uspesno sacuvan'); SaveDialog1.FileName :=''; end; end; I to sve lepo radi. Ali kad ocu posle izvrsenja te funkcije da uradim u nekoj drugoj funkciji ovo: Code: ASSIGNFILE(unosi[br],('data\firm'+pored[i].sifra)); //pored[i].sifra je string {$I-} Reset(unosi[br]); {$I+} IF IORESULT <> 0 THEN REWRITE(unosi[br]); //OVDE JAVI GRESKU Greska je "Invalid FileName" Samo da napomenem da ovo radi sve dok ne exportujem u excel. Pomagajte vec sam izludeo:) |