Pessoal, tenho um groupbox com 6 opções e de acordo com a opção se gera um arquivo texto diferente. O meu problema que quando vou tentar gravar no arquivo texto, e apenas em uma das opções aparece o erro de "invalid file name". Olhi tudo e não achei porque ele não ta pegando o nome do arquivo, até porque essa parte do codigo está igual a das outras cinco opções, que não dão erro.
Abaixo vou colocar o trecho com erro:
...
LabelStatus.Caption := 'Gerando Notas de Saida';
LabelStatus.visible := TRUE;
MessageDlg('Esta operação pode demorar alguns minutos, por favor aguarde !!!', mtWarning, [mbOK], 0);
QSaida.close;
QSaida.parambyname('WFI').AsInteger := QFILIAL.FIELDBYNAME('FILIAL').AsInteger;
QSaida.parambyname('TIPO').Asstring := 'S';
QSaida.parambyname('WDTINI').AsDATE := dtInicial.Date;
QSaida.parambyname('WDTFIM').AsDATE := dtFinal.DATE;
IF QSaida.ParamByName('WdtfiM').AsDate < QSaida.ParamByName('Wdtini').AsDate THEN
begin
MessageDlg('Data Final menor que data inicial!', mtWarning, [mbOK], 0);
dtFinal.SetFocus;
end
else
BEGIN
QSaida.Open;
QSaida.First;
GaugeStatus.MaxValue := QSaida.RecordCount;
{$I-}
{ Get directory name from TEdit control }
MkDir('C:\teste\'+ IBLKFILIAL.Text + '\Saidas\'+ copy(DateToStr(dtInicial.Date),1,2)+ ' a ' + copy(DateToStr(dtFinal.Date),1,2) + ' do ' + copy(DateToStr(dtInicial.Date),4,2) + ' de ' + copy(DateToStr(dtInicial.Date),7,4));
{$I+}
Salvar1.InitialDir := 'C:\teste\'+ IBLKFILIAL.Text + '\Saidas\'+ copy(DateToStr(dtInicial.Date),1,2)+ ' a ' + copy(DateToStr(dtFinal.Date),1,2) + ' do ' + copy(DateToStr(dtInicial.Date),4,2) + ' de ' + copy(DateToStr(dtInicial.Date),7,4);
Salvar1.FileName := 'saida.txt';
Salvar1.Title := 'Salvar arquivo remessa em:';
SALVAR1.Execute;
AssignFile (arq,Salvar1.FileName);
Rewrite (arq);
O sistema da o erro na ultima linha, no rewrite, mais não consigo descubrir o porque!
Por favor, vocês podem me ajudar!!!!
Editado por Micheus Incluída tag's CODE para melhorar a visualização. Utilize a identação também ;)
Pergunta
tux_boy
Pessoal, tenho um groupbox com 6 opções e de acordo com a opção se gera um arquivo texto diferente. O meu problema que quando vou tentar gravar no arquivo texto, e apenas em uma das opções aparece o erro de "invalid file name". Olhi tudo e não achei porque ele não ta pegando o nome do arquivo, até porque essa parte do codigo está igual a das outras cinco opções, que não dão erro.
Abaixo vou colocar o trecho com erro:
... LabelStatus.Caption := 'Gerando Notas de Saida'; LabelStatus.visible := TRUE; MessageDlg('Esta operação pode demorar alguns minutos, por favor aguarde !!!', mtWarning, [mbOK], 0); QSaida.close; QSaida.parambyname('WFI').AsInteger := QFILIAL.FIELDBYNAME('FILIAL').AsInteger; QSaida.parambyname('TIPO').Asstring := 'S'; QSaida.parambyname('WDTINI').AsDATE := dtInicial.Date; QSaida.parambyname('WDTFIM').AsDATE := dtFinal.DATE; IF QSaida.ParamByName('WdtfiM').AsDate < QSaida.ParamByName('Wdtini').AsDate THEN begin MessageDlg('Data Final menor que data inicial!', mtWarning, [mbOK], 0); dtFinal.SetFocus; end else BEGIN QSaida.Open; QSaida.First; GaugeStatus.MaxValue := QSaida.RecordCount; {$I-} { Get directory name from TEdit control } MkDir('C:\teste\'+ IBLKFILIAL.Text + '\Saidas\'+ copy(DateToStr(dtInicial.Date),1,2)+ ' a ' + copy(DateToStr(dtFinal.Date),1,2) + ' do ' + copy(DateToStr(dtInicial.Date),4,2) + ' de ' + copy(DateToStr(dtInicial.Date),7,4)); {$I+} Salvar1.InitialDir := 'C:\teste\'+ IBLKFILIAL.Text + '\Saidas\'+ copy(DateToStr(dtInicial.Date),1,2)+ ' a ' + copy(DateToStr(dtFinal.Date),1,2) + ' do ' + copy(DateToStr(dtInicial.Date),4,2) + ' de ' + copy(DateToStr(dtInicial.Date),7,4); Salvar1.FileName := 'saida.txt'; Salvar1.Title := 'Salvar arquivo remessa em:'; SALVAR1.Execute; AssignFile (arq,Salvar1.FileName); Rewrite (arq);O sistema da o erro na ultima linha, no rewrite, mais não consigo descubrir o porque!
Por favor, vocês podem me ajudar!!!!
Editado por MicheusIncluída tag's CODE para melhorar a visualização. Utilize a identação também ;)
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.