INICIAR SEQUENCIA ATRAVES DO ARQUIVO TXT
Boa tarde Galera!
tenho um sistema que grava em .TXT os dados do banco de dados, mas toda vez que insiro um novo aquivo eu tenho que digitar o número do arquivo que vou gerar, exemplo: (o ultimo arquivo foi 199, mas se eu for lançar um novo, tenho que digitar o número 200) eu queria que o sistema fizesse isso automático, mas que ele buscasse esta informação de um arquivo TXT
se alguém puder me ajudar.
tenho um sistema que grava em .TXT os dados do banco de dados, mas toda vez que insiro um novo aquivo eu tenho que digitar o número do arquivo que vou gerar, exemplo: (o ultimo arquivo foi 199, mas se eu for lançar um novo, tenho que digitar o número 200) eu queria que o sistema fizesse isso automático, mas que ele buscasse esta informação de um arquivo TXT
se alguém puder me ajudar.
Se você salvar como um parametro em uma tabela o próximo registro não resolve?
JESUEL,
não pq eu não estou usando o registro da chave primária do access pra dar sequencia, estou usando a sequencia gerada por outro aplicativo.
preciso mesmo buscar esta informação através do arquivo TXT (eu tenho isso mas em macro no excel) conforme abaixo
não pq eu não estou usando o registro da chave primária do access pra dar sequencia, estou usando a sequencia gerada por outro aplicativo.
preciso mesmo buscar esta informação através do arquivo TXT (eu tenho isso mas em macro no excel) conforme abaixo
Sub Macro3()
[ô]cria numero sequencial a partir de um arquivo txt em disco
[ô]não esquecer de criar o mesmo
Range([Ô]Q03[Ô]).Select
Selection.ClearContents
If (Range([Ô]I08[Ô]) = [Ô][Ô]) Then
MsgBox [Ô]Colocar Nome Solicitante[Ô]
Range([Ô]I08[Ô]).Select
Exit Sub
End If
If (Range([Ô]P08[Ô]) = [Ô][Ô]) Then
MsgBox [Ô]Colocar Nome Vendedor[Ô]
Range([Ô]P08[Ô]).Select
Exit Sub
End If
If (Range([Ô]D37[Ô]) = [Ô][Ô]) Then
MsgBox [Ô]Colocar OBSERVAÇÃO DESTA OCORRÊNCIA[Ô]
Range([Ô]D37[Ô]).Select
Exit Sub
End If
ActiveSheet.Unprotect
If Len(Sheets([Ô]Autorização[Ô]).Cells(3, 23)) = 0 Then
arquivo = ActiveWorkbook.Path & [Ô]\Devolução salva\Saldo1.txt[Ô]
[ô]Arquivo = ActiveWorkbook.Path & [Ô] \saldo1.txt[Ô]
[ô]LeAlias (7)
Open arquivo For Input As #1
[ô]Open Arquivo For Random As #1 Len = Len(Ren)
Do While Not EOF(1)
C = meucar
meucar = Input(1, #1)
meucar = C & meucar
Loop
meucar = Val(meucar)
meucar = meucar + 1
Close #1
Open arquivo For Output As #1
Write #1, meucar
Close #1
meucar = meucar - 1
Do While Len(meucar) < 4
meucar = [Ô]0[Ô] & meucar
Loop
Range([Ô]Q3[Ô]) = [Ô]AUTORIZAÇÃO DE DEVOLUÇÃO N° [Ô] & meucar
End If
Macro5
End Sub
Cara,
Se teu arquivo guarda informações que têm uma composição iqual para todos,
Exemplo: 199 - Algum cometário - 21/02/2013 - 20:01pm
Utilize, por exemplo, o [txt-color=#0000f0]Mid[/txt-color] para retornar o nº no começo da linha
Vou utilizar o exemplo que passei:
Utilize, agora, a variável Index para criar outra linha, acrescentada de uma unidade.
Se teu arquivo guarda informações que têm uma composição iqual para todos,
Exemplo: 199 - Algum cometário - 21/02/2013 - 20:01pm
Utilize, por exemplo, o [txt-color=#0000f0]Mid[/txt-color] para retornar o nº no começo da linha
Vou utilizar o exemplo que passei:
Dim Linha As String = [txt-color=#e80000][Ô]199 - Algum comentário - 21/02/2013 - 20:01pm[Ô][/txt-color]
Dim Index As UInt32 = Val(Mid(Linha, 1, Instr(Linha, [txt-color=#e80000][Ô] [Ô][/txt-color]) - 1))
Index += 1
MsgBox(Index)
Utilize, agora, a variável Index para criar outra linha, acrescentada de uma unidade.
PEGUDO,
eu tenho o arquivo gravado em TXT pelo sistema que criei conforme abaixo, em negrito tenho o número do conhecimento de transporte 199, se eu tivesse começado desde o começo a usa-lo, seguiria o auto numeração do access, mas como já tenho 199 registros, foi a opção que lembrei, mas se tiverem algum exemplo de como gerar uma sequencia a partir do número do registro anterior ficaria mais fácil
eu tenho o arquivo gravado em TXT pelo sistema que criei conforme abaixo, em negrito tenho o número do conhecimento de transporte 199, se eu tivesse começado desde o começo a usa-lo, seguiria o auto numeração do access, mas como já tenho 199 registros, foi a opção que lembrei, mas se tiverem algum exemplo de como gerar uma sequencia a partir do número do registro anterior ficaria mais fácil
REGISTROSCTE|1
CTE|1.04||
IDE|35||5352|PRESTAÇÃO DE SERVIÇO DE TRANSPORTE|1|57|1|199|2013-02-21T14:44:34|1|1||1|0|3|1.2.0||3509502|Campinas|SP|01|0|3519071|Hortolandia|SP|3106200|Belo Horizonte|MG|1||||
TOMA03|0|
COMPL||||||ENTREGA EM DIVINÓPOLIS|
FLUXO||||
EMIT|11153631000167|795009911110|NOME EMITENTE||RUA PEDREIRA|1175|CASA|JD NOVO CAMPOS ELISEOS|3509502|Campinas|13050544|SP|191111111|
REM|67151258000321||748128077115|MGE EQUIPAMENTOS E SERVIÇOS FERROVIÃRIOS LTDA|PROGRESS RAIL - H1|SITIO SÃO JOÃO|S/N||JARDIM SÃO CAMILO|||13184902|SP|1058|Brasil|1000000000|
INFOUTROS|99||6141 / 6142 / 6143 / 6144|2013-01-31|10066.00|
DEST|00924429000175||0629780140041|FERROVIA CENTRO ATLANTICA S/A||RUA SAPUCAI|383|ENTREGA EM DIVINÓPOLIS|FLORESTA||3106200|Belo Horizonte|30150301|MG|1058|Brasil|1000000000|
VPREST|1826.12|1826.12|
COMP|FRETE|1566.00|
COMP|ADVALOREM|10.07|
COMP|PEDAGIO|54.40|
COMP|TXCTE|0|
COMP|OUTROS|0|
IMP||
ICMS00|00|1630.47|12.00|195.66|
INFCTENORM|
INFCARGA|10066.00|Diversos||
INFQ|00|VOLUME|4|
INFMODAL|1.04|
RODO|45456700|2013-01-31|0||
Novamente estou supondo que seu arquivo sempre terá este formato, então faça os testes com este texto que você passou.
Coloque-o dentro de um [txt-color=#0000f0]TextBox[/txt-color] (ou troque [txt-color=#0000f0]TextBox1.Text[/txt-color], no código por uma variável que tenha este texto) e rode o programa.
Repare também que se você já tiver um arquivo de classe chamado [txt-color=#0000f0]Class1[/txt-color], só precisará escrever a partir de [txt-color=#0000f0]Public Class Index[/txt-color].
Abraços.
Faça seu login para responder