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

    [Resolvido]Transformar Orçamento em pedido

    Compartilhe

    renan_1419
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 29/12/2015

    [Resolvido]Transformar Orçamento em pedido

    Mensagem  renan_1419 em Qua 06 Jan 2016, 03:52

    Olá, Tenho o Formulario "FrmVenda" Que é associado a "TblVenda" Nessa tabela tem as colunas 'CodVenda' 'Cliente' 'Endereço' 'Telefone'
    E tenho também a "TblDetalheDaVenda" Nessa tabela ficam registrados os produtos Ex. 'CodTabVenda' 'Produto' 'Quant' 'ValorUnit'



    e tenho também o formulario "FrmOrçamento" Que é associado a "TblOrcamento" (Tem as mesmas colunas da TabelaVenda)
    E a "TblDetalheDoOrcamento" (Tem as mesmas colunas da TblDetalheDaVenda)
    Quando eu faço um orçamento é gerado um códigoOuNumero Certo?




    O seguinte é esse. No "FrmVenda" Tenho um botão chamado 'BtCarregarOrc' que abre o formulario "FrmCarregarOrcamento" Aqui temos uma caixa de texto Chamada'TxtNorçamento' nela eu coloco o numero do orçamento, e tenho tambem um botão de '"OK" Nesse botão eu quero inserir o codigo No evento 'Ao Clicar' e importar o orçamento no qual eu digitei o numero na 'TxtNorçamento' para a minha venda...


    Já tentei adaptar esse Código que peguei aqui no fórum mesmo, mas não obtive sucesso...
    Código:
     Set rs2 = dbOrc.OpenRecordset("SELECT * FROM TblDetalheDoOrcamento WHERE CodTabDetalheOrcamento=" & Me.TxtNorçamento)

    'Aqui abro a tabela que vai receber os produtos do orçamento
    Set rs3 = dbOrc.OpenRecordset("TblDetalheDaVenda", dbOpenTable)


    'Aqui os campos que vão receber os dados dos produtos do orçamento
    While (Not rs2.EOF)
    With rs3
    .AddNew
    ![CodVendaDet] = DMax("CodVenda", "TblVenda")
    ![CodProd] = rs2![CodProduto]
    ![Produto] = rs2![Produto]

    .Update
    rs2.MoveNext
    End With
    Wend

    'Aqui fecho as tabelas abertas
    rs1.Close
    Set rs1 = Nothing

    rs2.Close
    Set rs2 = Nothing

    rs3.Close
    Set rs3 = Nothing

    Set dbOrc = Nothing

    'Aqui abro o formulário de vendas exatamente  com as informações do orçamento transformado em venda



    'Aqui o evento é cancelado caso eu escolha a opção "não", ou seja, se eu não desejar transformar o orçamento em venda
    DoCmd.CancelEvent




    End Sub

    Saudações amigos, agradeço desde já a quem me quebrar esse galho. Neutral Neutral Neutral

    renan_1419
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 29/12/2015

    Re: [Resolvido]Transformar Orçamento em pedido

    Mensagem  renan_1419 em Qua 06 Jan 2016, 10:05

    Up
    avatar
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 2870
    Registrado : 06/11/2009

    Re: [Resolvido]Transformar Orçamento em pedido

    Mensagem  Assis em Qua 06 Jan 2016, 11:29

    Bom dia Renam

    Veja as regras do forum, na linha 10

    [Você precisa estar registrado e conectado para ver este link.]

    Tem aqui um exemplo

    [Você precisa estar registrado e conectado para ver este link.]


    .................................................................................
    *** Só sei que nada sei ***

    renan_1419
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 29/12/2015

    Re: [Resolvido]Transformar Orçamento em pedido

    Mensagem  renan_1419 em Qui 07 Jan 2016, 02:36

    Olá amigo Maximo, obrigado pela força.
    Mas aqui não deu certo.
    Eu te pergunto, não teria como fazer essa importação por outro código?
    Ou então pelos próprios formularios...
    Ex. Com o formulário "FrmVenda" Aberto. Ao clicar no botão (OK) Ele abra o formulário "FrmOrcamento" e copie apenas os códigos das mercadorias e suas quantidades, e o código do Cliente. 'Jogue esses dados na venda E em seguida feche o "FrmOrcamento"
    É possível fazer desse por esse método?

    renan_1419
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 29/12/2015

    Re: [Resolvido]Transformar Orçamento em pedido

    Mensagem  renan_1419 em Sab 09 Jan 2016, 00:07

    Olá amigos, consegui adaptar o seguinte codigo para fazer a umportação.
    Código:
    Private Sub BtOk_Click()
    DoCmd.OpenForm "FrmFazerOrcamento", acNormal, "", "[CodOrcamento]=[Forms]![Frm_CarregarOrcamento]![TxtNorçamento]", , acNormal 'Abro o form Fazer do orçamento para pegar os dados do cliente


    Forms![FrmFazerVenda].TxtCodCli = Forms![FrmFazerOrcamento].TxtCodCli
    Forms![FrmFazerVenda].VEndereço = Forms![FrmFazerOrcamento].VEndereço
    Forms![FrmFazerVenda].VTelefone1 = Forms![FrmFazerOrcamento].VTelefone1
    Forms![FrmFazerVenda].VTelefone2 = Forms![FrmFazerOrcamento].VTelefone2
    Forms![FrmFazerVenda].VCidade = Forms![FrmFazerOrcamento].VCidade
    Forms![FrmFazerVenda].VBairro = Forms![FrmFazerOrcamento].VBairro
    Forms![FrmFazerVenda].VComplemento = Forms![FrmFazerOrcamento].VComplemento
    Me.Requery
    DoCmd.Close acForm, "FrmFazerOrcamento"    'Fecho o form Fazer do orçamento

    DoCmd.Close acForm, "FrmFazerVenda"    'Aqui fecho o Frm de venda
    DoCmd.OpenForm "FrmFazerVenda", acNormal    'Abro ele novamente
    DoCmd.GoToRecord , , acLast      'E vou para o ultimo registro adicionado

    '_________________________________________________ Logo abaixo inicio a cópia dos registros da TblDetalheDoOrcamento para a TblDetalhedavenda


     Dim dbOrc As Database, rs1, rs2, rs3 As DAO.Recordset


    Set dbOrc = CurrentDb
     
      Set rs1 = dbOrc.OpenRecordset("TblVenda", dbOpenTable)
     
     
      Set rs2 = dbOrc.OpenRecordset("SELECT * FROM TblDetalheDoOrcamento WHERE CodOrcamentoDet=" & Me.TxtNorçamento)  'Aqui eu pego o numero do orçamento que quero importar
    DoCmd.Close acForm, "Frm_CarregarOrcamento"  'Fecho o form que carrega o orçamento


    'Aqui abro a tabela que vai receber os produtos do orçamento
    Set rs3 = dbOrc.OpenRecordset("TblDetalheDaVenda", dbOpenTable)


    'Aqui os campos que vão receber os dados dos produtos do orçamento
    While (Not rs2.EOF)
    With rs3
    .AddNew
    ![CodVendaDet] = DMax("CodVenda", "TblVenda")
    ![Produto] = rs2![Produto]
    ![ValorUnitario] = rs2![ValorUnitario]
    ![Quantidade] = rs2![Quantidade]
    .Update
    rs2.MoveNext
    End With
    Wend

    'Aqui fecho as tabelas abertas
    rs1.Close
    Set rs1 = Nothing

    rs2.Close
    Set rs2 = Nothing

    rs3.Close
    Set rs3 = Nothing

    Set dbOrc = Nothing

    Forms!FrmFazerVenda.Requery  'Atualizo o form
    DoCmd.GoToRecord , , acLast 'vou para o ultimo registro. E pronto, o orçamento foi importado...  :)

    renan_1419
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 29/12/2015

    Re: [Resolvido]Transformar Orçamento em pedido

    Mensagem  renan_1419 em Sab 09 Jan 2016, 00:09

    Obrigado Maximo. Eu não teria conseguido sem a sua ajuda...

    Obrigado amigo. Wink
    avatar
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 2870
    Registrado : 06/11/2009

    Re: [Resolvido]Transformar Orçamento em pedido

    Mensagem  Assis em Sab 09 Jan 2016, 13:21

    Renan

    Pode postar a solução (BD) que encontrou para o seu problema, para que todos do forum possam usufruir de mais um exemplo ?

    Obrigado


    .................................................................................
    *** Só sei que nada sei ***

    renan_1419
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 29/12/2015

    Re: [Resolvido]Transformar Orçamento em pedido

    Mensagem  renan_1419 em Sab 09 Jan 2016, 22:02

    Ok, amigo, segue em anexo o BD do importador de orçamento para venda (Em pleno funcionamento)
    Acho que vai ajudar bastante a quem está com a mesma duvida, pois pesquisei muuito e não achei nada que ajudasse muito.
    Peço também aos mestres que avaliem esse BD de exemplo...

    -Cód adaptado através do exemplo do nosso amigo Máximo


    Obrigado
    Att...
    ImportarOrçamentoRenanVenancioExemplo
    avatar
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 2870
    Registrado : 06/11/2009

    Re: [Resolvido]Transformar Orçamento em pedido

    Mensagem  Assis em Sab 09 Jan 2016, 23:36

    Renam

    Aconselho a que crie as relações entre as tabelas como a imagem, para que quando eliminar um orçamento, ou uma venda os produtos que estão relacionados também sejam eliminados.


    [Você precisa estar registrado e conectado para ver esta imagem.]


    .................................................................................
    *** Só sei que nada sei ***

    renan_1419
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 29/12/2015

    Re: [Resolvido]Transformar Orçamento em pedido

    Mensagem  renan_1419 em Dom 10 Jan 2016, 14:44

    Ok Maximo, assim farei. Obrigado pela Dica. Idea

    A adaptação ficou boa?

      Data/hora atual: Sex 23 Jun 2017, 18:13