MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    Criar numero de série..

    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Criar numero de série..

    Mensagem  Samuel Ribeiro em 25/6/2014, 02:24

    Boa noite pessoal..

    Ajudando a um colega a concluir um sistema de controle de produção de equipamentos, estamos tentando fazer com que o sistema cria um numero de série automaticamente da seguinte forma.

    o numero de série: 00314042007-B

    0   - Modelo
    03  - Mês de fabricação
    14  - Ano de fabricação
    0420 - Numero de registro de fabricação
    007 - Numero de equipamentos produzidos no dia.

    Se alguém souber de um script que possa nos ajudar a criar este numero de série por favor nos ajude..

    desde ja agradeço.


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6660
    Registrado : 15/03/2013

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  ahteixeira em 25/6/2014, 14:34

    Olá

    Assim só vai dar para 9 modelos

    Numero de registro de fabricação quando vai ser reinicializado? quando chegar aos 9999?

    Uma vez que vai incluir o nº efetuados por dia, só vai poder gera quando tiver o totalizador do dia.

    E o que é "-B" do serial é fixo?

    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 25/6/2014, 23:23

    Boa noite ahteixeira.
    Obrigado elo retorno

    O numero de registro de fabricação sera zerado assim que a criação de numero de séri iniciar, este numero postado é só um exemplo.

    A Letra -B faz parte do modelo também já esta em projeto o modelo C



    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7615
    Registrado : 05/11/2009

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Alexandre Neves em 26/6/2014, 08:08

    Bom dia,
    Modelo & Format(MesFabrico,"00") & Right(AnoFabrico,2) & Format(RegistroFabrico,"0000") & Format(EquipamentosProduzidosDia,"0000")


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 26/6/2014, 16:48

    Boa tarde Alexandre Neves.

    Muito Obrigado pelo retorno.
    Este Script seria colocado aonde?
    Na aba evento, AfterUpdate?
    ou em outro item da aba evento?

    Desde ja agradeço.


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7615
    Registrado : 05/11/2009

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Alexandre Neves em 26/6/2014, 16:57

    Boa tarde,
    Onde vai criar o número de série.


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 26/6/2014, 17:00

    Sim, Claro

    Mas na propriedade do campo, na aba eventos afterupdate?


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7615
    Registrado : 05/11/2009

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Alexandre Neves em 26/6/2014, 17:03

    Como tem a mecânica?
    Tem de ir buscar o MesFabrico, o AnoFabrico, o RegistroFabrico, o EquipamentosProduzidosDia e colocar onde pretende o número construído
    Pode ser por acontecimento ou por execução de código num botão


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 28/6/2014, 20:52

    Boa tarde pessoal
    este segue em anexo o formulário onde monto a ordem de serviço

    e abaixo o código que estou tentando montar no botão Gerar numero de série mas não esta dando certo

    Código:

    Private Sub cmdGerarNumSerie_Click()
    Dim DataInicio As String
    Dim DataConclusao As String
    Dim MesFabricacao As String
    Dim AnoFabricacao As String
    Dim strNumeroSerie As String
    Dim numeroOS As String
    Dim QtdeEquipamentos As Integer
    Dim a As Integer
    Dim LetrModelo As String
    Dim NumModelo As String

    'NumModelo = InputBox("Tipo de Rx - ( 0 ou 1 )")
    'LetrModelo = InputBox("Digite o modelo ( A Ou B )")
    'QtdeEquipamentos = InputBox("Digite a quantidade ")
    'numeroOS = InputBox("Numero da Ordem de Serviços : ")
    'DataInicio = InputBox("Digite a data : ")
    'DataInicio = Mid(DataInicio, 3, 2) ' 06
    'DataConclusao = Mid(DataConclusao, 3, 2) ' 06
    'AnoFabricacao = Right(AnoFabricacao, 2) ' 14
    For a = 1 To Me.NumeroSerie

    If QtdeEquipamentos > 9 Then GoTo line2 Else GoTo line1

    line1:

    For a = 1 To QtdeEquipamentos
    strNumeroSerie = NumModelo & MesFabricacao & AnoFabricacao & numeroOS & "0000" & a & "-" & LetrModelo

    CurrentDb.Execute "INSERT INTO tblNumeroDeSerie(NumOS,NumeroDeSerie,DataInicio,DataConclusao)" _
                    & " Values(""" & Me.numeroOS.Value & """,""" & NumeroSerie & """, """ & DataInicio & """, """ & DataConclusao & """"

    MsgBox (NumeroSerie)

    Next a
    Me.GeradorNumSerie.Requery
    End Sub
    line2:

    For a = 1 To QtdeEquipamentos
    strNumeroSerie = NumModelo & MesFabricacao & AnoFabricacao & numeroOS & "0000" & a & "-" & LetrModelo

    MsgBox (NumeroSerie)

    Next a
    Me.GeradorNumSerie.Requery
    End Sub
    Anexos
    Criar numero de série.. AttachmentPrintTelaOS.docx
    Você não tem permissão para fazer download dos arquivos anexados.
    (122 Kb) Baixado 16 vez(es)


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 28/6/2014, 22:20

    Olá Mateus

    Bom, pensando com meus tico e teco(meus dois neurônios), tenho algumas perguntas a fazer antes de sugerir algo.
    Acredito que a montagem do número de série seja facil, mas temos que tratar de alguns detalhes.

    Em primeiro lugar, nos disse que essa composição do número de série abaixo é um exemplo e não o real, o que é uma pena,
    pois estaremos apenas conjecturando, mas vamos la:

    É necessário saber o que será digitado e o que será incrementado automaticamente pelo sistema.

    0-Modelo ........................................................................ fixo ou será digitado?
    03-Mês de fabricação ...................................................Automático, mês atual
    14-Ano de fabricação ...................................................Automático, ano atual
    0420-Numero de registro de fabricação.................. o que é isso? será incrementado? acredito que sim, mas você disse que é apena um exemplo.                                                                                
    007 - Numero de equipamentos produzidos no dia..................Se é uma produção em série, a cada número será incrementado, ao contrario
    .................................................................................................................do que se pensa que teria ter o total do dia.

    Desculpe, mas como deve saber é necessário.

    Bom, se puder passar esse detalhes, creio poder ajudar melhor.

    Veja aqui um exemplo real de 2 números de contratos da empresa de um cliente.

    200124727.09.411-2 - Esse contrato pelo último algarismo sabemos que o cliente tem 2 contratos diferentes na empresa.
    453108.08.411-1/R/Q - Contrato sofreu Renegociação e foi devidamente Quitado.

    Abraços

    Noob
    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 28/6/2014, 22:32

    Boa noite Noobezinho

    Obrigado pelo Retorno

    Não se pelo anexo deu para você ver se não deu vou enviar de novo compactado.
    Todos o campos são informados no formulário pelo usuário, só quero que pelo numero de equipamentos que serão produzidos no dia seja criado um numero de série para cada equipamento, conforme segue abaixo.

    003140042007-B

    0 = Numero modelo
    03 - Mês Fabricação
    14 - Ano Fabricação
    00420 - Numero da Ordem de Serviços que é numeração automática
    007 - Numero de produtos a ser produzido no dia
    B - Letra do modelo

    Todas estas informações constam no formulário, gerado automaticamente ou informado pelo Usuário.
    e os números de série seja lançado no campo da direita chamado lstGeradorNumSerie.
    Desde já Agradeço
    Segue em anexo o print do formulário de OS
    Anexos
    Criar numero de série.. AttachmentPrintFormOS.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (116 Kb) Baixado 22 vez(es)


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 28/6/2014, 22:49

    Samuel

    mes e ano fabricação não pode ser o Atual ? Tem que ser digitado, ou seja, existe um atraso na fabricação e digitação dos dados?

    Numero da ordem de serviços
    Como são geradas essas  OS's?
    Creio não pode incrementar no número serial, já que as ordens são geradas em outro local, concorda?

    Agora observei (vesgo, eu) que o número da os é digitada no campo ao lado do numero serial



    Aguardo...

    Noob
    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 28/6/2014, 22:55

    Claro, mês e ano podem ser o atual, se o numero da OS não pode ser o numero de registro de fabricação, então é melhor informar ele também.
    Ou pode ser gerado automaticamente?

    Desde já agradeço.


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 28/6/2014, 23:02



    Eu teria que entender onde é gerado os números das OS, já que no meu entender, são elas as responsáveis pela fabricação do produto.

    Se for dessa forma cada Os irá liberar a fabricação de mais de um produto, é isso?
    Se for isso, a incrementação dos números da os deve acontecer na criação dela.

    Bom eu vou criar o código, e enviar, vai ver que é bem simples

    Então poderá alterar algo que não estiver de acordo.

    Noob
    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 28/6/2014, 23:13

    Noobezinho...

    Você deu uma olhada no anexo? Onde esta o formulário da ordem de serviços

    O primeiro campo do lado esquerda em cima e onde é gerado o numero da ordem de serviços
    O campo grande do lado direito onde esta escrito Números de Séries é onde sera armazenado os números de séries baseados na quantidade a equipamentos que serão produzidos. E os números de série devem ser salvos natblNumeroDeSerie.

    O segundo campo do lado esquerdo acho que não vai ter serventia, o chamado numero de série.

    Muito Obrigado pelo seu esforço.


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 28/6/2014, 23:16

    Samuel

    Precisa definir até que numero irá a produção diária, deve ter um limite, ou seja,  3 casas(até 999) ou 4 casas(9999).
    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 28/6/2014, 23:19

    pode definir por 04 casas (9999)


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 29/6/2014, 02:23

    Samuel

    Vamos lá:

    Atenção: Todos os números terão que ser Texto.

    Primeiro: Crie uma tabela nome: tblNumProd com um campo de nome: NumProd - texto com 4 letras
    Esta será a tabela auxiliar responsável pelo incremento da produção.Façamos assim que será mais fácil.
    Quando criar essa tabela, digite nela somente o primeiro registro que é 0000.
    Esta tabela não terá mais registros somente esse, que será incrementado a cada produção.

    * As tabelas não precisam ter chaves primaria nem index.

    Não esqueça de fazer a consistência antes do código ser gerado, ou seja, verificar se os campos foram preenchidos
    antes de clicar no botão.

    No "botão Gerar Numero serial", coloque o codigo abaixo:
    mova o foco para o controle NumeroSerie

    Me.NumeroSerie= me.MN & Format(date,"mm") & Format(date,"yy") & me.numeroOS & Format(dmax("NumProd","tblNumProd")+1,"0000")  & "-" & Me.MA
    * confira os nomes dos controles.
    aqui deverá fazer uma consulta Atualização para atualizar o numero NumProd  da tabela tblNumProd.
    deixo isso por sua conta.
    deixe o teu botão gerar desativado para evitar clicar mais de uma vez por produção.

    Qualquer coisa, grite!!

    Noob
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7615
    Registrado : 05/11/2009

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Alexandre Neves em 29/6/2014, 13:20

    Boa tarde,
    Desde 2011, já podia ter mais ginástica.
    De onde vem NumModelo?
    De onde vem MesFabricacao?
    De onde vem AnoFabricacao?
    De onde vem QtdeEquipamentos?
    De onde vem DataInicio (data tipo texto?)?
    De onde vem DataConclusao (data tipo texto?)?

    Private Sub cmdGerarNumSerie_Click()
    Dim a As Integer
    Dim QtdeEquipamentos As Integer
    Dim strNumeroSerie As String
    Dim NumModelo As String
    Dim MesFabricacao As String
    Dim AnoFabricacao As String

    Dim DataInicio As String
    Dim DataConclusao As String

    For a = 1 To QtdeEquipamentos
    strNumeroSerie = NumModelo & Format(MesFabricacao,"00") & Right(AnoFabricacao,2) & Format(a,"0000") & Format(QtdeEquipamentos,"0000")
    CurrentDb.Execute "INSERT INTO tblNumeroDeSerie(NumOS,NumeroDeSerie,DataInicio,DataConclusao)" _
    & " Values(""" & Me.numeroOS.Value & """,""" & strNumeroSerie & """, """ & DataInicio & """, """ & DataConclusao & """"

    MsgBox (strNumeroSerie)

    Next a
    Me.GeradorNumSerie.Requery
    End Sub


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 29/6/2014, 14:12

    Olá Alexandre

    Chegou a ver a imagem que o Samuel postou na mensagem de número 11?

    E se olhar na minha mensagem anterior, verá de onde vem os dados.

    Me.NumeroSerie= me.MN & Format(date,"mm") & Format(date,"yy") & me.numeroOS & Format(dmax("NumProd","tblNumProd")+1,"0000")  & "-" & Me.MA

    Como pode ver, está de acordo com a imagem do formulário contido nela.

    Abraços

    Noob
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7615
    Registrado : 05/11/2009

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Alexandre Neves em 29/6/2014, 15:58

    Realmente, só costumo considerar dados da bd. A razão prende-se com o hábito de se estar a trabalhar em Access e, alguns colegas, querem a solução em Access e apresentam dados em formato diferente. Normalmente, é para esconder o que têm e, nestes casos, torna-se simples: Eles escondem o que têm e nós escondemos o que temos! A colaboração no fórum pressupõe boa-vontade recíproca. Os dados devem ser protegidos mas devem ser disponibilizados dados significativos para que quem pretende ajudar apenas tenha o trabalho de criar o que ainda falta e não perder tempo com o que já está feito. Esta conversa deveria ser desnecessária, penso eu.
    Continuo a perguntar: como se chamam os objectos apresentados na imagem? Porque não disponibiliza dados em Access para se trabalhar?


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    Kaynan
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2438
    Registrado : 09/04/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Kaynan em 29/6/2014, 19:57

    Disse bem mestre Alexandre,os dados é de direito proteger mas os objetos envolvidos seria bem melhor disponibilizar para ser mais facil e mais rápido de resolver,assim todos nós ganharíamos.

    Abçs.
    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 29/6/2014, 22:14

    Boa noite Alexandre..
    Me perdoe a falta de malicia, a intenção não é proteger as informações que necessitam para postar as vossas valiosar ajudas, o prolema é que não estava aceitando o tamanho do arquivo para ser enviado.

    Reduzi ao máximo o bd para postar, se for de seu agrado agradeço muito por uma outra resposta, pois o código que o grande colega Noob postou esta dando o seguinte erro:

    A JOIN expression is attempting to join two tables on fields of incompatible data types. For example, you will get this error if you attempt to join a Memo field with a Text field.

    Me perdoe a ignorância, minha intenção não é proteger meus projetos, tanto é que tenho um projeto imenso rodando com colegas do fórum mesmo, todo compartilhado para estudos.

    Segue em anexo o banco de dados..
    Anexos
    Criar numero de série.. AttachmentordemServiçosRX.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (310 Kb) Baixado 36 vez(es)


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 30/6/2014, 01:35

    Samuel


    Se colocar no google tradutor, verá que o erro é pertinente a união entre 2 tabelas com campos de tipos diferentes.
    Provalmente é algum campo que modificou quando pedi para colocar os números envolvidos como texto.
    Bom, como disse que enviou parte do teu aplicativo, sugiro que verifique as duas linhas que deixei como comentário(verde) no módulo do formulário pedidos .
    Também nesse formulário, tive que tirar para poder testar o código que tinha passado, o objeto do lado direito do formulário com
    o nome de uma caixa de listagem, mas na realidade é uma caixa onde deveria ter um subformulário.

    Estou enviado o teu aplicativo sem esses objetos, para que veja que o código passado por mim, funciona perfeitamente.

    Abraços


    Noob
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 30/6/2014, 14:31

    Samuel

    Abaixo o mesmo código sem a necessidade de ter a tabela auxiliar tblNumProd.
    Eu não estava gostando de ter uma tabela só pra isso.  Razz 

    Código:

    Me.NumeroSerie = Me.NumModelo & Format(Me.MesFabricacao, "00") & Me.AnoFabricacao & Me.numeroOS & Format(DMax(Right(Mid$([NumeroSerie], 1, Len([NumeroSerie]) - 2), 4), "tblOrdemServicoRX") + 1, "0000") & "-" & Me.LetrModelo

    Aguardo notícias  Wink 

    Noob
    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 30/6/2014, 18:02

    Boa tarde Noob

    Funcionou, mas ele esta contando o numero e a letra, os dois não podem mudar ao mesmo tempo.
    e também precisava que naquele campo a direita do formulário fosse mostrado os números de série da quantidade de equipamentos.
    Por exemplo:
    Eu informaria todas as informações necessárias no formulário com a quantidade de 04 equipamentos. Ai no campo Chamado lstGeradorNumSerie apareceria da seguinte forma.

    Primeiro Numero: 003140420007-B
    Segundo numero: 003140420008-B
    Terceiro numero: 003140420009-B
    Quarto numero: 003140420010-B

    A letra do modelo não muda. Obs. No campo lstGeradorNumSerie não precisa aparecer o as Palavras, Primeiro Numero, Segundo Numero etc.
    E estes Números de séries serem gravados na tabela tblNumeroDeSerie.
    Minha dificuldade é esta, espero que tenha me entendido.

    Muito obrigado pelo tempo e a paciência.






    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 30/6/2014, 18:11

    Samuel

    Mudou algo do código?

    porque aqui está funcionando perfeitamente, faz exatamente o que você deseja.

    Ele incrementa apenas os 4 últimos dígitos pertinentes ao numero de produção seguido de "-B" no caso do exemplo
    Espero que tenha copiado e colado o código do meu ultimo post, sem ter modificado posteriormente.
    Para desencargos de consciência, copie e cole aqui o teu código, ok?

    Noob
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 1/7/2014, 21:54

    Samuel

    Conseguiu?

    Se ainda não, verifique os campos envolvidos na construção do número serial, se todos

    estão como string.

    Sabe usar a janela imediata (crtl+G) para testar os código?


    Noob
    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 1/7/2014, 23:26

    Boa noite Noob..

    É complicado, não consegui resolver ainda..

    Veja o código como esta:

    Código:
    Private Sub cmdGerarNumSerie_Click()
    Dim DataInicio As Date
    Dim DataConclusao As Date
    Dim MesFabricacao As String
    Dim AnoFabricacao As String
    Dim strNumeroSerie As String
    Dim numeroOS As String
    Dim QtdeEquipamentos As String
    Dim a As String
    Dim LetrModelo As String
    Dim NumModelo As String
    Dim NumProd As String

    strNumeroSerie = Me.NumeroSerie

    For a = 0 To Me.NumeroSerie

    Me.NumeroSerie = Me.NumModelo & Format(Me.MesFabricacao, "00") & Me.AnoFabricacao & Me.numeroOS & Format(DMax(Right(Mid$([NumeroSerie], 1, Len([NumeroSerie]) - 2), 4), "tblOrdemServicoRX") + 1, "0000") & "-" & Me.LetrModelo

    CurrentDb.Execute "INSERT INTO tblNumeroDeSerie(NumOS,NumeroDeSerie,DataInicio,DataConclusao)" _
                    & " Values(""" & Me.numeroOS.Value & """,""" & NumeroSerie & """, """ & DataInicio & """, """ & DataConclusao & """"
    Me.NumeroSerie.SetFocus

    Next a
    Me.lstGeradorNumSerie.Requery
    End Sub


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 2/7/2014, 02:33

    Samuel

    Vamos deixar o simples então:

    Mantenha a tabela tblNumProd

    Retire todo código do botão cmdGeraNumSerie,
    e copie e cole o código abaixo, só isso.
    Então teste.

    Código:


    Dim numProd As String

    numProd = Format(DMax("NumProd", "tblNumProd") + 1, "0000") 'guardo o valor de numserie para atualizar a tblNumProd
    Me.NumeroSerie.SetFocus
    Me.NumeroSerie = Me.NumModelo & Me.MesFabricacao & Me.AnoFabricacao & Me.numeroOS & Format(DMax("NumProd", "tblNumProd") + 1, "0000") & "-" & Me.LetrModelo
    'Atualiza a tabela tblNumProd
    DoCmd.SetWarnings False
    DoCmd.RunSQL "UPDATE tblNumProd SET tblNumProd.NumProd = " & numProd
    DoCmd.SetWarnings True
    Me.cmdGerarNumSerie.Enabled = False


    Depois que tiver funcionando, pode acrescentar os demais códigos que precisa para o andamento do sistema, mas não
    altere esse código.

    Noob
    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 2/7/2014, 17:22

    Boa tarde Noob..

    O código funcionou, gerou o numero de série normal, mas preciso que ele baseado na quantidade de equipamentos ele gere o restante dos numeros de série e jogue eles no campo lstGeradorNumSerie e depois salve na tabela tblNumeroDeSerie, é um desafio muito grande mas com a ajuda de vocês vou conseguir.

    desde ja agradeço o seu esforço em me ajudar.


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 2/7/2014, 19:27

    Samuel,
    Não sabia ou não tinha entendi sobre isso.

    Agora entendi, só que na cópia que você anexou,
    eu vi que o controle do lado direito do formulário tinha o nome lstGeradorNumSerie , mas vi também que o tipo do controle é o de se usar para colocar um subformulário.
    Confirme se isso ta certo, porque aqui ele está em branco.
    Continuando.
    Se eu tiver 10 unidades de um determinado produto, vou incrementar cada um em que momento?
    O dados no formulário são todos iguais, só muda o numProd, dentro do numeroSerie?
    No código que te passei, cada produto desse é adicionado na tblProdutos e atualizado na tblNumProd.
    Agora vamos povoar a caixa de listagem com esses números de série, essa caixa de listagem terá mais alguma coluna?

    No aguardo...



    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 3/7/2014, 00:29

    Boa noite Noob..

    De novo te agradeço pelo esforço em me ajudar..

    Vamos la, no momento em que eu montar a Ordem de Serviços, baseado na quantidade de equipamentos para ser produzido, e eu clicar no botão de Gerar números de séries, os números já devem ser gerados no campo do lado direito do formulário chamado lstGeradorNumSerie, e o numProd tem que ser continuo, não pode retornar a zero de uma ordem de serviços para outra, agora quanto a mudança de ano, vou me informar sobre isto. Isto tudo porque esta produção é monitorada pela Anvisa.

    Espero que você tenha entendido.

    Acho que este código deve ter algo assim:

    CurrentDb.Execute "INSERT INTO tblNumeroDeSerie(NumOS,NumeroDeSerie,DataInicio,DataConclusao)" _
                   & " Values(""" & Me.numeroOS.Value & """,""" & NumeroSerie & """, """ & DataInicio & """, """ & DataConclusao & """"
    Me.NumeroSerie.SetFocus

    Next a
    Me.lstGeradorNumSerie.Requery

    Concorda?


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 3/7/2014, 01:40

    Manuel

    Faltou informação.

    Você não me disse o que tem no quadrado do lado direito do formulário, tem o nome de caixa de listagem, mas não é.
    É um quadrado para colocar um subformulário.

    Afinal, é uma caixa de listagem, o que mais tem nela?
    Releia o final do meu post anterior

    Explique, por favor.


    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 3/7/2014, 11:56

    Bom dia Noob..

    Concordo com você, é apenas um quadrado em branco onde deveria ser adicionado um sub formulário ou um sub relatório, não vai ter mais nem uma coluna, somente aparecera os números de séries gerados. No numero de série, só mudara o numProd o restante continuara do mesmo jeito, caso abra outra ordem de serviços em outro mês, o mês mudara também no mesmo caso o ano.

    Espero que tenha entendido, qualquer duvida é só postar.

    Um abraço e obrigado pela ajuda.


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 3/7/2014, 12:08

    Então devo entender que se trata de uma listbox, já que o nome é lstGeradorNumSerie

    Com essas informações, já posso fazer o código, caso algo diferente, me avise.

    Editando: Você colocou o controle/campo DataConclusaoOS para ser  gravado na tblNumeroDeSerie

    no momento de gerar o numero de serie.

    Isto está correto?

    Tem como prever a data de conclusão?


    Aguardo...


    Noob
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 4/7/2014, 13:28

    Samuel

    Taí o exemplo para estudo.

    Baseado no que fiz, você pode dar continuidade no teu projeto.

    Noob
    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 5/7/2014, 00:41

    boa noite Noob

    Deu certo, muito obrigado pela ajuda.
    Sem você eu não teria conseguido.

    Um abraço..


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Noobezinho em 5/7/2014, 00:53

    Que ótimo Samuel

    Valeu pelo retorno

    Boa sorte !!


    Noob
    avatar
    carolhonorio
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 1
    Registrado : 21/09/2017

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  carolhonorio em 21/9/2017, 18:30

    Olá Samuel,
    Esse numero de registro de fabricação, é dada sequência para todos os produtos fabricados ou a sequência é dada para os tipos de produtos?

    No caso eu fabrico diferentes produtos, o numero de registro serão crescente e sequencial para todos os produtos ou devo separar por tipo?

    ex: Fabrico Guindastes e Monovias
    no caso nº de registro seria 0001 ( Guindastes) e 0002 ( Monovias)
    ou
    0001( Guindastes) e 0001(monovias) ( Pois são produtos diferentes.


    Última edição por Alexandre Neves em 23/9/2017, 10:06, editado 1 vez(es) (Razão : Retirei endereço electrónico da Carolina)
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7615
    Registrado : 05/11/2009

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Alexandre Neves em 23/9/2017, 10:05

    Bom dia, Carolina
    Bem-vinda ao fórum
    Retirei o "Resolvido" para manter a dúvida em aberto.
    retirei-lhe o seu endereço elctrónico, de forma a proteger a sua privacidade e devido às respostas que devem ser publicadas no fórum para que todos acompanhem e aprendam
    Aguardemos que o Samuel (ou outro membro) ajude na sua dúvida


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    Samuel Ribeiro
    Samuel Ribeiro
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 584
    Registrado : 05/02/2011

    Criar numero de série.. Empty Re: Criar numero de série..

    Mensagem  Samuel Ribeiro em 6/12/2017, 14:33

    Boa Tarde Carolina
    Me perdoe o atraso, tinha até esquecido este tópico, faz tempo que não posto nem um outro, o registro de feito para todos os equipamentos fabricados, o que pode mudar no caso é o Modelo que você pode alterar incluindo o tipo e modelo.
    Espero ter ajudado

    Um Abraço


    .................................................................................
    ______________________________
         Samuel Carlos Ribeiro

      Data/hora atual: 27/5/2020, 15:34