Fórum Extração de Sequencial #12617
05/12/2009
0
select MAX (CODVIS) from K07CADVIS este comando funciona no banco mas não funcionou quando passei pelo commandtext, na verdade estou necessitando deste sequencial antes de relizar o post/applyupdates. O processo seria consultar o ClientDataset extrair o maior sequencial incrementá-lo e inserir no campo Chave Primaria sem perder os dados digitados em tela. P.s. Este é o meu primeiro chamado, não sei se estou sendo claro suficiente se necessitar de mais esclarecimentos, é só falar No aguardo, Jorge Farias
Jorge Silva
Curtir tópico
+ 0Posts
07/12/2009
Wesley Yamazack
Seja bem vindo ao sistema de consultoria.
Sua dúvida dependendo do banco de dados pode ser resolvida de maneira bem simples, me diga qual é seu banco de dados ? Oracle? Firebird ? MySQl ? Qual ? Pois com ele podemos gerar uma Sequence, caso ele possua, porém se for um bd Tipo o MySQL não tem sequence dai vamos ter que implementar uma rotina na tua aplicação.
Um abraço
Wesley Y
Gostei + 0
07/12/2009
Jorge Silva
Gostei + 0
08/12/2009
Wesley Yamazack
Gostaria de saber como este ClientDataSet é alimentado, você em algum momento usa um SQLQuery ou DataSetProvider certo ?
O problema de você usar o MAX, é que se você pegar 2 pessoas fazendo um cadastro ao mesmo tempo, e no momento que uma clica no Novo, e a outra também, eles irão pegar o mesmo ID(Código), e na hora de gravar, o primeiro irá gravar, porém o segundo irá dar erro de P.K. , entendeu esta situação ? Sem contar que varre o ClientDataSet em modo de Insert.
Fico no aguardo
Um abraço
Wesley Y
Gostei + 0
09/12/2009
Jorge Silva
Gostei + 0
09/12/2009
Wesley Yamazack
Um abraço
Wesley Y
Gostei + 0
11/12/2009
Jorge Silva
Gostei + 0
14/12/2009
Wesley Yamazack
O nó é complicado mesmo,mas acho que temos uma solução... rs !!!
Bom se voê vai ter um XML e depois importar para o bd, minha duvida é se o XML ao ser importado será apagado, sera ?
Pois acho que você pode trabalhar com dois campos e depois concatenar, Codigo(AutoIncremento - xx) + CodigoVendedor (YY), então você teria dois campos, e na hora que você fosse importar no ID, você junta os dois xxYY, e este seria teu ID, para cada vendendor, sacou ?
Fui claro ? Veja se esta ideia resolveu teu problema meu amigo, estamos aqui para qualquer dúvida.
Um abraço
Wesley Y
Gostei + 0
14/12/2009
Jorge Silva
O xml não vai ser excluido, na verdade o ideal seria que ao conectar o notebook na rede um comando sincroniza-se as informações sem a necessidade de importação de .TXT.
Concatenar o sequencial com o codigo do vendedor é a ideia, mas o sequencial não pode ser unico para todos os vendores tem que incrementar sómente o ultimo registro daquele vendedor.
Gostei + 0
15/12/2009
Wesley Yamazack
Então não temos mais problema, pois você cria um campo no XML, do tipo AutoIncremento, e o código do seu vendedor, já que não vai ser apagado você não terá repetição. Exemplo
Note1 :
Vendedor 1
Registro 1
Registro 2
Registro 3
Acontece uma importação
Registro 4
Registro 5
Note2 :
Vendedor 2
Registro 1
Registro 2
Acontece uma importação
Registro 3
Registro 4
Registro 5
Note3 :
Vendedor 3
Registro 1
Acontece uma importação Vendedor + Registro = 31
Registro 2
Registro 3
Registro 4
Registro 5
Acontece uma importação
Vendedor + Registro = 32
Vendedor + Registro = 33
Vendedor + Registro = 34
Vendedor + Registro = 35
Entendeu meu ponto de vista ?
Um abraço
Wesley Y
Gostei + 0
15/12/2009
Jorge Silva
Agora para que isso funcione o código do vendedor tem que ficar disponivel enquanto o aplicativo estiver aberto, isso seria em uma variavel global ? para que ele coloque o usuario e senha no inicio da aplicação e não coloque mais.
Gostei + 0
16/12/2009
Wesley Yamazack
Você é o cara ! Matou a charada,rs. Você terá um usuário e senha na tela de login, e no FormPrincipal, passe o codigo dele para uma variável, e a qualquer momento que você queira sabre qual vendedor esta logado, você vai e pega do FormPrincipal.Variavel, Sacou ?
Um abraço
Wesley Y
Gostei + 0
18/12/2009
Wesley Yamazack
Abraço
Wesley Y
Gostei + 0
21/12/2009
Jorge Silva
Pode fechar o chamado sim, daqui pra frente tá mais tranquilo.
Muito Obrigado pela atenção e como dizem por aqui: "Qual quer coisa aperreio vocês denovo".
Grande Abraço
Jorge
Gostei + 0
21/12/2009
Jorge Silva
Pode fechar sim, daqui pra frente tá mais tranquilo e como dizem por aqui:"Qualquer coisa aperreio vocês denovo".
Obrigado pela atenção,
Grande abraço.
Jorge
Gostei + 0
21/12/2009
Wesley Yamazack
Amigo estamos aqui para lhe ajudar em tudo que precisar. Se não abrir nenhum outro chamado até o final do ano, gostaria de lhe desejar um feliz natal e um ano novo cheio de saúde e paz, para ti meu caro.
Um abraço
Wesley Y
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)