Marcelo França Postado Novembro 28, 2012 Denunciar Share Postado Novembro 28, 2012 Olá a todos, o script abaixo esta dando erro na linha onde tem '0101' e '0102', e mesmo colocando ' não funciona. me ajudem por favorset @pedido := 'PP-00025421/12';update vendadet set natureza = 5.403 where sittrib = 010 and numero = @pedido;update vendadet set sittrib = 0102 natureza = 5.403 and numero = @pedido;update vendadet set natureza = 5.102 where sittrib = 020 and numero = @pedido;update vendadet set sittrib = 0101 natureza = 5.102 and numero = @pedido;update vendadet set natureza = 5.405 where sittrib = 060 and numero = @pedido;update vendadet set sittrib = 0102 natureza = 5.405 and numero = @pedido; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Denis Courcy Postado Novembro 29, 2012 Denunciar Share Postado Novembro 29, 2012 Olá a todos, o script abaixo esta dando erro na linha onde tem '0101' e '0102', e mesmo colocando ' não funciona. me ajudem por favorset @pedido := 'PP-00025421/12';update vendadet set natureza = 5.403 where sittrib = 010 and numero = @pedido;update vendadet set sittrib = 0102 natureza = 5.403 and numero = @pedido;update vendadet set natureza = 5.102 where sittrib = 020 and numero = @pedido;update vendadet set sittrib = 0101 natureza = 5.102 and numero = @pedido;update vendadet set natureza = 5.405 where sittrib = 060 and numero = @pedido;update vendadet set sittrib = 0102 natureza = 5.405 and numero = @pedido;Campos numericos com ZERO na frente são representações de bases numéricas diferentes. Neste caso base OCTAL.A representação de números em bases decimais se faz SEM zeros na frente.Outra coisa, o número 5.405 não é 5mil 405. é 5,405. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Marcelo França Postado Dezembro 3, 2012 Autor Denunciar Share Postado Dezembro 3, 2012 Mas 0101 e 0102 não são números decimais são códigos fiscais e no sistema esta cadastrado com 4 dígitos, se eu coloca no sistema manualmente ele aceita, mas pelo SQL-front ele não aceita. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Danilo C Postado Dezembro 3, 2012 Denunciar Share Postado Dezembro 3, 2012 sittrib é de que tipo?creio que vá precisar utilizar o tipo varchar. Inteiro ele vai remover os zeros.Caso não possa alterar o tipo, continue inserindo como inteiro, e no select use o LPAD:SELECT LPAD( sittrib, 4, '0') FROM tableO que a função faz é adicionar X zeros no lado esquerdo, até que o campo possua 4 numeros.Ex:valor do campo: 102select LPAD(102, 4, '0')me retornará 0102 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Denis Courcy Postado Dezembro 4, 2012 Denunciar Share Postado Dezembro 4, 2012 Uma outra possibilidade é modificar o atributo para que contenha a cláusula ZEROFIL. Zerofil preenche zeros a esquerda de números inteiros. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Marcelo França
Olá a todos, o script abaixo esta dando erro na linha onde tem '0101' e '0102', e mesmo colocando ' não funciona. me ajudem por favor
set @pedido := 'PP-00025421/12';
update vendadet set natureza = 5.403 where sittrib = 010 and numero = @pedido;
update vendadet set sittrib = 0102 natureza = 5.403 and numero = @pedido;
update vendadet set natureza = 5.102 where sittrib = 020 and numero = @pedido;
update vendadet set sittrib = 0101 natureza = 5.102 and numero = @pedido;
update vendadet set natureza = 5.405 where sittrib = 060 and numero = @pedido;
update vendadet set sittrib = 0102 natureza = 5.405 and numero = @pedido;
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.