ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Problema ao passar string vazia para servidor datasnap

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Mobile com Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
eduardoserrao
Novato
Novato


Registrado: Segunda-Feira, 28 de Novembro de 2016
Mensagens: 78

MensagemEnviada: Sex Dez 01, 2017 9:57 am    Assunto: Problema ao passar string vazia para servidor datasnap Responder com Citação

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.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Mobile com Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB