Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-02-2012
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Convertir a entero una división de 2 enteros.

No he logrado convertir a entero una división de 2 enteros, es decir tengo dos campos 'Integer' y hago una divisón entre ellos y el resultado lo quiero guardar en otro campo también entero.

Lo he arreglado de la siguiente y chapucera manera.


Código Delphi [-]
procedure TDmPedido.IbDtsLinPedidosBULTOSChange(Sender: TField);
begin
DmPedido.IbDtsLinPedidosIMPORTE.Value:= DmPedido.IbDtsLinPedidosBULTOS.Value *
DmPedido.IbDtsLinPedidosFORMATO.Value * DmPedido.IbDtsLinPedidosPCOMREAL.Value;

DmPedido.IbDtsLinPedidosUNISKG.Value:=DmPedido.IbDtsLinPedidosBULTOS.Value *
DmPedido.IbDtsLinPedidosPESO.Value;

  if DmPedido.IbDtsLinPedidosUNISPALET.Value <> 0 then
  DmPedido.IbDtsLinPedidosPALETS.Value:=StrToInt(FormatFloat('0',int(DmPedido.IbDtsLinPedidosBULTOS.Value /
  DmPedido.IbDtsLinPedidosUNISPALET.Value)))
  else
  DmPedido.IbDtsLinPedidosPALETS.Value:=0;
end;

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #2  
Antiguo 22-02-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¿No tendrías que usar Trunc o Round?

// Saludos
Responder Con Cita
  #3  
Antiguo 22-02-2012
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.557
Poder: 25
egostar Va camino a la fama
Esto no te sirve ?

Código Delphi [-]
DmPedido.IbDtsLinPedidosBULTOS.Value div DmPedido.IbDtsLinPedidosUNISPALET.Value

Saludos
Responder Con Cita
  #4  
Antiguo 22-02-2012
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Son influencias de otro lenguaje, tienes razón, ya está en marcha:

Código Delphi [-]
 if DmPedido.IbDtsLinPedidosUNISPALET.Value <> 0 then
  DmPedido.IbDtsLinPedidosPALETS.Value:=Trunc(DmPedido.IbDtsLinPedidosBULTOS.Value /
  DmPedido.IbDtsLinPedidosUNISPALET.Value)
  else
  DmPedido.IbDtsLinPedidosPALETS.Value:=0;

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #5  
Antiguo 22-02-2012
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Eliseo, no me funciona tu código porque me da error.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #6  
Antiguo 22-02-2012
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.557
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por marcoszorrilla Ver Mensaje
Eliseo, no me funciona tu código porque me da error.

Un Saludo.
Ya veo, será por el .Value, lo bueno es que se solucionó con el trunc().

Saludos
Responder Con Cita
  #7  
Antiguo 22-02-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.042
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por marcoszorrilla Ver Mensaje
Eliseo, no me funciona tu código porque me da error.
Un Saludo.
También habría que saber qué error es, que parecemos novatos
Responder Con Cita
  #8  
Antiguo 22-02-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por Casimiro Notevi Ver Mensaje
También habría que saber qué error es, que parecemos novatos
Han de ser esas influencias

Cita:
Empezado por marcoszorrilla Ver Mensaje
Son influencias de otro lenguaje
// Saludos
Responder Con Cita
  #9  
Antiguo 22-02-2012
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cita:
Empezado por Casimiro Notevi Ver Mensaje
También habría que saber qué error es, que parecemos novatos
Remítelo a la guía de estilo, como haces con todo mundo. (es broma, compas)
Responder Con Cita
  #10  
Antiguo 22-02-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Marcos.

Sólo para agregar que la sugerencia de egostar funciona perfectamente cambiando Value por AsInteger.
Código Delphi [-]
  with DmPedido do
    IbDtsLinPedidosPALETS.AsInteger:= IbDtsLinPedidosBULTOS.AsInteger div IbDtsLinPedidosUNISPALET.AsInteger;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #11  
Antiguo 22-02-2012
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Gracias Ecfisa, me suponía como ya apuntó Eliseo que se debía a utilizar Value, pero como estaba trabajando y ya no quería hacer más pruebas lo dejé como apunté anteriormente.

En cuanto al error, era un error ambiguo ya que se producía en el else después de la instrucción, por lo tanto no di datos porque no los tenía y no podía perder tiempo en buscarlo, el mensaje fue más en deferencia con Eliseo que también se había molestado en buscar una solución como se ha visto a posteriori válida.

Gracias a todos.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #12  
Antiguo 22-02-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.042
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Al González Ver Mensaje
Remítelo a la guía de estilo, como haces con todo mundo. (es broma, compas)
No, que me vaya a banear
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Convertir de entero a float elea SQL 3 26-01-2011 21:29:05
Convertir un entero a un caracter Mr_Nitro_7 Varios 1 15-01-2010 22:10:38
convertir fecha en entero sandra mendoza Varios 6 20-05-2008 14:48:27
Como convertir enteros en cardinales grone35 Varios 1 23-08-2006 16:44:34
convertir una cadena de caracteres a un enteros dmagui Firebird e Interbase 2 05-08-2005 17:39:16


La franja horaria es GMT +2. Ahora son las 13:59:28.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi