eduardoserrao Novato


Registrado: Segunda-Feira, 28 de Novembro de 2016 Mensagens: 78
|
Enviada: Sex Dez 01, 2017 9:57 am Assunto: Problema ao passar string vazia para servidor datasnap |
|
|
Bom dia,
Eu estou com um "problema" em relação a passagem de parâmetros para meu método em um servidor datasnap.
Meu método:
| Código: | salvarPedidoVendaItem(idPedido, idCliente, obs: String;
idItem, idProduto, idEmpresa, idVendedor: Integer ; quantidade, valorUnt, vlrDesconto, vlrTotal : Double): Boolean; |
Neste método coloquei apenas um showmessage para verificar os valores passados.
Estava acontecendo um problema de conversão de um valor double pra inteiro quando passo as variáveis do tipo string vazias.
Então fiz um teste passando os parâmetros um por um para tentar identificar o que estava acontecendo, e percebi que a posição dos parâmetros fica errada quando uso strings vazia.
Exemplo com as variáveis do tipo string preenchidas:
idPedido = 1
idCliente =1
obs = 'teste obs'
idItem = 1
idProduto = 503
idEmpresa = 1
idVendedor = 1
quantidade = 1
valorUnt = 7
vlrDesconto = 0,28
vlrTotal = 6,72
mesmo teste passando todas as strings vazias:
idPedido = 1
idCliente = 503 (503 é o idProduto)
obs = 1 (1 é o idEmpresa)
idItem = 1 (1 é o idVendedor)
idProduto = 1 (1 é a quantidade)
idEmpresa = 7 (1 é o valorUnt)
idVendedor = 0,28 (o problema de conversão acontece aqui, pois 0,28 é o vlrDesconto e a variável idVendedor é do tipo inteiro)
quantidade = 6,72 (6,72 é o vlrTotal)
valorUnt = 0
vlrDesconto = 0
vlrTotal = 0
Alguém sabe por que isso acontece? e como poderia fazer para que aceite strings vazias? se eu passar ' ' (com um espaço) ao invés de passar EmptyStr ou '' funciona normal.
Obs: quando gerei a classe proxy no client percebi que todos os métodos estão com um parâmetro a mais (ARequestFilter: string = '') acredito que isso tenha alguma relação com esse problema. |
|