digito verificador em lote

30/07/2009

Ola  amigos   Gostaria de saber como faço para qe um projeto que estou desenvolvendo ele calcula o digito verificador e lote   Existe um TEDIT onde tem uma seguencia de numero '11499346-7' e sistena calculasse o digito verificador que ja tenho e no segunda TEDIT onde tem a quantidade e o projeto calculasse os restante da seguencia e digito verificador da seguencia ate dar a quantide do segundo edit     Desde ja agradeço   Diogenes  
Diogenes Dourado

Diogenes Dourado

Curtidas 0

Respostas

Wesley Yamazack

Wesley Yamazack

30/07/2009

Olá amigo,
  Ter como fazer até tem, porém como é o calculo ? Como funciona ? Explica melhor que te ajudamos.


  Um abraço

Wesley Y
GOSTEI 0
Diogenes Dourado

Diogenes Dourado

30/07/2009

Ola   WESLEY   Deculpa, por saber explicar, pois ate eu depois de ler me atrapalhei   Tenho um agoritmo que calcula os digitos verificador aqui na empresa, exemplo 12509502-3 que foi modificado para linguagem delphi por voceis.   Gostaria de saber como faço para que o meu projeto que quando e digitar o primeiro numero 12509502-3 e no proximo edit digito uma quantidade qualquer ex 10pçs o sistema completa com os proximos 9 pçs ex ate 12509512 e ainda colocasse o digito verificador para que o usuário não precisase  digitar o restante da 9 unidades tenho um algoritmo parecido em visual, mas não estou conseguindo mudar para DELPHI   Gostaria muito que voce me ajudasse     Desde ja agradeço
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

30/07/2009

Ola meu amigo.
  Bom pelo que eu vi o 12509502-3, seria o primeiro, já no segundo 12509512, terceiro seria 12509522, quarto 12509532, seria esta lógica ? e como ficaria o digito verificador?
  Um abraço meu amigo. Fico no aguardo.

Wesley Y
GOSTEI 0
Diogenes Dourado

Diogenes Dourado

30/07/2009

Bom dia   Isso mesmo, tenho um  algoritmo criado em VBA que não capacidade de modifica-lo para DELPHI,  pois ainda estou catinhando para DELPHI.     Tenho o almoritmo abaixo que calcula o  DV foi modificado por você quando inciei meus trabalhos em  DELPHI   begin  strNum:= copy(num_med,1,8); //nDV := Right(num_med,1); DV := 0; if (copy(num_Med,12)) = '0' then  begin   teste(edit1)  end;  tot := 0;  Resto :=0;  Quo := 0:  nSubtr := 9;  for I : 2 to 9 do  begin   intParte := StrToInt(Copy(strNum, (I-1),1));   Prod:= intParte * nSubtr;  Tot := Tot+Prod;  nSubtr := nSubtr -1; end; // next I Quo := Tot div 11; Resto := Tot -(Quo * 11); DV := 11 - resto if (DV = 10) or (DV =11) then  begin   DV := 0 end;   end;     O algoritmo acima ele verifica do DV, e abaixo existe um que quando Clica no botão o projeto calcula o DV em lote   Dim Db As Database, rs, rsLab, RsArq As Recordset
Dim Num_Med_dig
Dim Num_Aux As Long, I As Integer
Dim rsCab, rsTemp, rstCam As Recordset
Dim strCaminho As String
 
Set Db = CurrentDb
Set rstCam = Db.OpenRecordset("Caminho")
   
rstCam.Edit
strCaminho = rstCam![Caminhos] 'Para abrir a tabela use no seu procedimento Set rs = AbrirTabelaSeek("Cabeçalho")
rs.Index = "Medidor" If Left(Me!Medidores, 2) < 10 Then
   MsgBox "Número Inválido Para Inclusão por Lote.@@ Corrija...   @ ", 0, "E R R O"
   Me!Medidores.SetFocus
   GoTo Fim:
End If Num_Aux = Left(Me!Medidores, 8) With rs
    For I = 1 To Me!QTDE
        Num_Med_dig = CalcDv(Num_Aux)
        rs.Seek "=", Num_Med_dig
        If rs.NoMatch = True Then
           .AddNew
            rs![Data de Entrada] = Me![Data Entrada]
            rs![Doc_entrada] = Me!Doc_entradas
            rs![Leitura] = 0
            rs![Tipo] = Me!Tipos.Value
            rs![Cod_local] = Me!Combinação97.Value
            rs![Cod_Situação] = 1
            rs![Medidor] = Num_Med_dig
            .Update
        Else
           If rs![Cod_Situação] <> 3 Then
              MsgBox "NÚMERO JÁ CADASTRADO.@@ " & Num_Med_dig, 0, "E R R O"
           Else
              rs.Edit
              rs![Data de Entrada] = Me![Data Entrada]
              rs![Doc_entrada] = Me!Doc_entradas
              rs![Leitura] = 0
              rs![Tipo] = Me!Tipos.Value
              rs![Cod_local] = Me!Combinação97.Value
              rs![Cod_Situação] = 1
              rs![Medidor] = Num_Med_dig
              rs![Data de Saída] = Null
              rs![Doc_saída] = Null
              .Update
           End If
       
        End If
             
        Num_Aux = Val(Left(Me!Medidores, 8)) + I
    Next
End With rs.Close MsgBox "INCLUSÃO PROCESSADA.@@ ", vbOKOnly, "A V I S O"
Fim:
End Sub   E como sou inesperirente não sei como modifica-lo   Segue abaixo a imagem do formulario        
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

30/07/2009

Olá meu amigo.
  O código em VB, esta meio complexo, não trabalhamos fica complicado analisar, o outro foi mais tranquilo por ser intuitivos os comandos, porém este tem algumas coisas mais complexas, da linguagem.
  Não teria como você desenvolver uma rotina para gerar o lote não ? Fazer do zero! Qual é a necessidade? Como funcionam estes lotes ? Me esclarece um pouco mais a rotina, derrepente conseguimos fazer um gerador de lotes.
  Fico no aguardo.

Att,

Wesley Y
GOSTEI 0
Diogenes Dourado

Diogenes Dourado

30/07/2009

Ola   Posso mandar os arquivos para você dar uma olhada, pois não estou sabendo explicar?   Grato   Diogenes      
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

30/07/2009

Olá meu amigo..
 POde sim, segue abaixo a video de como anexar os arquivos

     https://www.devmedia.com.br/imagens/videos/4/Video%20disco%20virtual.htm

Um abraço

Wesley Y
GOSTEI 0
Diogenes Dourado

Diogenes Dourado

30/07/2009

bom dia   Conforme combinado envei os arquivos para você dar um olhada, ele roda em access com dois bancos de dados viculados. Roda somente da pasta c:\laboratorio.   No menu principal vá em incluir Equipamento- Inclui equipamenstos em lote onde existe o botão  confirma que faz todo o processo de calculo para o lote   GRato   Diogene
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

30/07/2009

Olá meu amigo,
  Só faltou o link para poder baixar. Fico no aguardo.

Wesley Y
GOSTEI 0
Diogenes Dourado

Diogenes Dourado

30/07/2009

Bom dia   Desculpa havia me esquecido de colocar o link   http://video.devmedia.com.br/discovirtual/180808/medidores.rar     Grato   Diogenes
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

30/07/2009

Bom dia meu amigo.
  Vamos trabalhar pra solucionar seu problema, peço que aguarde um pouco.
  Um abraço


Wesley Y
GOSTEI 0
Diogenes Dourado

Diogenes Dourado

30/07/2009

Boa tarde Muito obrado pela paciencia.   Grato     Diogenes
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

30/07/2009

Olá meu amigo,

  Peço que espere um pouco mais pois a rotina esta complexa. 

Um abraço

Wesley Y
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

30/07/2009

Olá meu amigo,
  Bom olha estava analisando aqui o código em VB(Porém não deu para entender muita coisa), e ao tentar acessar o banco ele pediu senha, qual seria ? Você me mandou 2 arquivos, um que parece ser um sistema, e o outro o banco de dados, o que eu quero, mesmo é saber como você hoje gera este codigo no lote, como você faz este procedimento? que ai nos inventamos uma maneira pelo delphi de fazer isso.

  Fico no aguardo meu amigo.
  Um abraço e bom dia !

Wesley Y
GOSTEI 0
Diogenes Dourado

Diogenes Dourado

30/07/2009

Boa tarde   Desculpa a senha é 'MEDIÇÃO', este procedimento não foi eu que criei, a unica coisa que tenho é, quando clicamo no botão confirma ele consegue incluir todos os digitos verificadores em lote.   Ou tem outra maneira de criar um algortimo, para gerar este digito verificador em lote??       Grato   Diogenes  
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

30/07/2009

 
Olá meu amigo, boa noite.
  Bom você não tem nada feito em delphi, certo ?
  Me diga uma coisa, este digite do lote, serve pra que? não poderia ser um registro criado automaticamente pelo banco de dados ? Identificando assim como o registro unico, mantendo uma sequencia, e nunca repetindo o código. Não poderia ser assim não? Pois desenvolver uma rotina para gerar este lote, fica complicado, pois na consultoria nós, não desenvolvemos e sim ajudamos, entendeu meu amigo? Não poderia ser assim não? Gerando o código pelo banco?

Um abraço

Wesley Y
GOSTEI 0
Diogenes Dourado

Diogenes Dourado

30/07/2009

Boa noite   Aqui esta uma correria desculpa por não ter repondido mais cedo, o digito é paracido com o do CPF, mas não estou consguindo fazer, então vou verificar com os encarragados para se podemos fazer de outra maneira.     Pois não consegui montar em delphi, vou conversar com o pessoal que desenvolveu o sistema para ver como eles fizeram o digito, e passa para você, para fazer isso.   Desculpa pelo longo trabalho, pois aqui na empresa temos que fazer chover, pela computador   Grato   Diogenes
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

30/07/2009

Olá meu amigo, td bem sei como é este lance de fazer chover.srs.
  Estou no aguardo.

Um abraço

Wesley Y
GOSTEI 0
Devmedia

Devmedia

30/07/2009

Diogenes,
podemos enecerrar o chamado?
GOSTEI 0
Diogenes Dourado

Diogenes Dourado

30/07/2009

Ola amigos   Podemos sim   Grato   Diogenes
GOSTEI 0
POSTAR