Cobol Foro
Navegación en el Foro
Retroceder   Cobol Foro Entornos de desarrollo y compiladores Cobol Fujitsu COBOL PowerCOBOL (ActiveX, v4 - v11)
PowerCOBOL (ActiveX, v4 - v11) Versiones del IDE basadas en ActiveX
 
Otros temas que te pueden interesar
Tema Autor Foro Respuestas Último post
[Sintaxis] Campos numericos en SQL Server Fito PowerCOBOL (ActiveX, v4 - v11) 4 17 de septiembre de 2020 09:02
[Duda] Definir Valores TableControl Recato53 PowerCOBOL (ActiveX, v4 - v11) 1 12 de agosto de 2017 19:04
[Sintaxis] Equivalencia de formato de campos numéricos Galileo COBOL - General 1 29 de enero de 2016 09:19
[Sintaxis] Como descifrar valores de COM-EXCEPTION Kuk PowerCOBOL y COM/OLE 5 20 de abril de 2015 18:36
[Sintaxis] Valores ASCII Recato53 PowerCOBOL (ActiveX, v4 - v11) 3 3 de abril de 2015 10:43

Respuesta

  #11
Antiguo 30 de marzo de 2015, 15:33
Breew
Patrocinador del Foro
Última Actividad 09.05.2022 07:47
Posts Posts: 125
Likes enviados Enviados: 104
Likes recibidos Recibidos: 8

Hola .

Vaya Fallo, No doy una con los numericos.
Comienzo a entender el tema de las variables numericas.

De todas maneras, me estoy calentando la cabeza y no consigo hacerlo funcionar bien.

Si quisiera hacer que dos numeros tecleados en pantalla con formato numerico de edicion me de el resultado en un tercer campo tambien visualizados como edicion, no me sale ni a tiros.

En el Form he creado 2 CmText donde introduzo el formato ZZZ9,99 y el resultado seria un tercer CmText tambien con ZZZ9,99

la procedure seria la siguiente
Código COBOL:
  1.  ENVIRONMENT     DIVISION.
  2.  DATA            DIVISION.
  3.  WORKING-STORAGE SECTION.
  4.  01 campo1          pic 9999v99.
  5.  01 campo2          pic 9999v99.
  6.  
  7.  
  8.  PROCEDURE       DIVISION.
  9.       move "text" of cmtext1 to campo1.
  10.       move "text" of cmtext2 to campo2.
  11.       Add campo1  to Campo2.
  12.       Move campo2 to "text" of cmtext3.

He hecho varias pruebas con decimal point is comma y no consigo saber si en los CmText debo tambien marcarlo o que es lo que debo de hacer.

Gracias de antemano por el incordio que os estoy dando.
Breew is offline   Responder Con Cita
  #12
Antiguo 30 de marzo de 2015, 16:28
Kuk
Administrador
Última Actividad 21.09.2026 18:24
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

Breew, "Text" no vale para calculos. Debes usar siempre POW-NUMERIC. Ya es el propio control el que se encarga de darle formato que has establecido. Haz lo siguiente:

Código COBOL:
  1. *******************************
  2.      ENVIRONMENT     DIVISION.
  3.      DATA            DIVISION.
  4.      WORKING-STORAGE SECTION.
  5.      01 campo1          pic 9999v99.
  6.      01 campo2          pic 9999v99.
  7.      
  8.      PROCEDURE       DIVISION.
  9.           move POW-NUMERIC of cmtext1 to campo1.
  10.           move POW-NUMERIC of cmtext2 to campo2.
  11.           Add campo1  to Campo2.
  12.           Move campo2 to POW-NUMERIC of cmtext3.

O incluso puedes hacer esto:

Código COBOL:
  1. ADD POW-NUMERIC OF CmText1 TO POW-NUMERIC OF CmText2
  2.     GIVING POW-NUMERIC OF CmText3

O tambien con COMPUTE:

Código COBOL:
  1. COMPUTE POW-NUMERIC OF CmText3 =
  2.     POW-NUMERIC OF CmText1 + POW-NUMERIC OF CmText2    



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #13
Antiguo 30 de marzo de 2015, 21:30
Breew
Patrocinador del Foro
Última Actividad 09.05.2022 07:47
Posts Posts: 125
Likes enviados Enviados: 104
Likes recibidos Recibidos: 8

Muchas gracias a todos.

Bueno, ya voy perfilando el tema, desconocia totalmente el artibuto de pow-numeric.

Como decia, lo voy perfilando, pero aun me queda un gran problema, la coma decimal.

No acaba de funcionar, he definido en el form decimal point is comma.

Tambien en el render text y he configurado ZZZ9,99 pero cuando tecleo el numero no me funciona el punto decimal , en cambio la coma si.

¿ Como podria hacer funcionar el punto decimal del teclado numerico ?

Perdonad el machaque.
Breew is offline   Responder Con Cita
  #14
Antiguo 30 de marzo de 2015, 23:17
Kuk
Administrador
Última Actividad 21.09.2026 18:24
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

Breew, en el evento "KeyPress" del/de los CmText que quieras hacer eso le pones el siguiente codigo:

Código COBOL:
  1. IF  POW-ARG-KEYASCII = 46 *> punto
  2.     MOVE 44 TO POW-ARG-KEYASCII *> coma
  3. END-IF

Asi cuando teclees punto decimal, te saldra coma.



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #15
Antiguo 30 de marzo de 2015, 23:51
Breew
Patrocinador del Foro
Última Actividad 09.05.2022 07:47
Posts Posts: 125
Likes enviados Enviados: 104
Likes recibidos Recibidos: 8

Hola.


Todo funciona por fin !!!!
Casi he dado una voltereta de alegria. Muchisimas gracias.
Por cierto, ya para rizar el rizo, me haria falta alinear a la derecha el contenido de los cmtext .
Algun consejo ???

Saludos Cordiales
Breew is offline   Responder Con Cita
  #16
Antiguo 31 de marzo de 2015, 08:51
Josber
Moderador Global
Activista del Foro: Activista del Foro - Issue reason: Por aportar manuales y enriquecer  Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por muchos agradecimientos 
Última Actividad 21.09.2026 07:20
Posts Posts: 883
Likes enviados Enviados: 418
Likes recibidos Recibidos: 492

Citación del post de Breew Ver Mensaje
Por cierto, ya para rizar el rizo, me haria falta alinear a la derecha el contenido de los cmtext .
Algun consejo ??? . 0:-)
En las propiedades, pestaña Single Line, marcas Editable Label y un poco más abajo En Alignment lo tienes.

Un saludo.-
Josber is offline   Responder Con Cita
  #17
Antiguo 31 de marzo de 2015, 09:56
Kuk
Administrador
Última Actividad 21.09.2026 18:24
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

A mi no me gusta mucho Editable Label, porque no toma apariencia "moderna".
Yo lo que hago es fijar fuente Courier New, con esto queda en posiciones fijas. Luego si alguno es mas largo por diseño del Form, le meto unas B-s y listo. Por ejemeplo:
  • ZZZZ9,99
  • BBZZ9,99



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #18
Antiguo 31 de marzo de 2015, 15:46
Josber
Moderador Global
Activista del Foro: Activista del Foro - Issue reason: Por aportar manuales y enriquecer  Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por muchos agradecimientos 
Última Actividad 21.09.2026 07:20
Posts Posts: 883
Likes enviados Enviados: 418
Likes recibidos Recibidos: 492

A mi tampoco me gusta el Editable Label Kuk, de vez en cuando, hace "cosas raras", pero algunas veces, por narices hay que usarlo.

Un saludo.-
Josber is offline   Responder Con Cita
  #19
Antiguo 31 de marzo de 2015, 16:33
Kuk
Administrador
Última Actividad 21.09.2026 18:24
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

Josber, prueba el metodo de ajustar con B-s (poniendo fuente Courier New). Los nuemros normalmente no deben ser ajustados en el centro, sino en la derecha. Y para otra cosa que no sea el ajuste realmente no sirve para nada el Editable ese, que ademas como decias, efectivamente falla bastante.

Si tienes varios CmText uno debajo del otro, y alguno es mas largo que los otros, a esos otros les pones tantas B-s por delante cuantas Z-s demas tenga el mas largo.

Código:
BBBZZZ9,99.
BBBZZZ9,99.
BBZZZZ9,99.
ZZZZZZ9,99.
Asi queda todo bien ajustado en la derecha!



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
Respuesta


Herramientas

Derechos de Publicación
No puedes publicar nuevos temas
No puedes publicar posts/responder
No puedes adjuntar archivos
No puedes editar tus posts

BB code is habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado

Saltar a Foro


La franja horaria es GMT +2. Ahora son las 01:22.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.