#1
|
|||
|
|||
Problema con una exit
Buenas tardes a todos,
Antes que nada decir que no soy programador y estoy más perdido que una cabra en un garaje con los case when if endif... He creado un FORM en la ZRGGBS000 añadiendo el siguiente código: *&---------------------------------------------------------------------* *& Form u962 Bloquear facturas con fecha inferior a fecha vencimiento *&---------------------------------------------------------------------* FORM u962. TABLES:LFB1. IF ( lfb1-cerdt < bseg-zfbdt ) AND ( BSEG-LIFNR = LFB1-LIFNR ). bseg-zlspr = 'A'. ENDIF. ENDFORM. "u962 Mi idea es que cuando contabilice una factura y en el maestro de proveedor el campo CERDT (fecha certificación) sea inferior a ZFBDT (vencimiento de la factura le ponga una A al campo ZLSPR (bloqueo de pago de la factura). Por favor help me un poquito. Muchas gracias |
#2
|
||||
|
||||
Ese codigo lo pusiste en el exit de una sustitución?
Si es asi me parece que el problema que tenes es que estas queriendo escribir un campo de la BSEG cuando en realidad no estoy seguro que el exit la esté utilizando. Estas son las tablas que utiliza un exit de sustitucion: Estructura AFVC Operación de orden Estructura AUFKV Generated Table for View AUFKV Estructura CAUFV Generated Table for View CAUFV Estructura CBPRV Proceso empresarial: CBPR + CBPT Estructura CKPHV Vista para CKPH + texto + datos de control... Estructura COBK Objeto CO: Cabecera de documento Estructura COBL Bloque de imputación Estructura CSKSV Indicador de control del registro maestro de CeCo Estructura PRPS Elemento PEP (elem.de plan estruct.proyecto) datos maestros Estructura SYST Campos sistema ABAP Estructura VBAK Documento de ventas: Datos de cabecera Estructura VBAP Documento de ventas: Datos de posición
__________________
Sergio Martin Montenegro Consultor SAP MM/ABAP Úlima edición por smontenegro fecha: 09/09/08 a las 15:15:39. |
#3
|
|||
|
|||
Me imagino q antes de ese if ya tienes toda tus variables llenas, lo que debes hacer es pasar a enteros la fecha, ¿como? simplemente pasalas a una variable tipo I creo q era sino busca una funcion , luego haces el if variable1 < variable2 AND BSEG-LIFNR = LFB1-LIFNR.
bseg-zlspr = 'A'. ENDIF. |
#4
|
|||
|
|||
hola ante todo la pregunta del millon, cuando le pones un break point y ejecutas tu proceso se queda hay o no,
|
#5
|
|||
|
|||
Hola a todos y gracias por las respuestas, La verdad es que no tengo ni idea de dónde puedo encontrar la sentencia donde le tengo que marcar el Break Point porque empiezo a contabilizar por la FB60, voy a Debugging Dynpro pero a partir de ahí me pierdo muchísisisimo. He hecho el paso a paso entero y me he quedado igual. Si me puedes dar alguna pista de dónde le tengo que poner el breakpoint te lo agradeceré mucho. Un saludo y muchas gracias de nuevo. |
#6
|
|||
|
|||
hola en la sentencia
iF ( lfb1-cerdt < bseg-zfbdt ) AND ( BSEG-LIFNR = LFB1-LIFNR ). break-point. * marca la linea y le das click al boton rojo que dice stop |
#7
|
|||
|
|||
De hecho..también tienes que tener mucho ojo con las variables que estás modificando...porque no me hace ningún sentido que modifiques directamente la BSEG, seguramente existe alguna tabla interna o estructura que guarda los datos mientras se procesa la transacción y luego son guardados.
|
#8
|
|||
|
|||
hola Promethevs, te comento que el tema de sustituciones que lo puedes ver en la transaccion obbh, no actualizas directamente ninguna tabla estandar solo sustituyes valores en los campos de la bseg o bkp(como ejemplo) en memoria. mas adelante por otro codigo estandard sap actualiza las tablas Saludos |
#9
|
|||
|
|||
Problema con una exit pero aprendiendo mucho...
Buenas otra vez,
Le he puesto el Breakpoint y lo que pasa es que los campos de la LFB1 no los rellena al contabilizar la factura. Es como si no encontrara el LFB1-CERDT ni el LFB1-LIFNR. ¿Sabéis a qué se puede deber esto?. Un saludo y muchas gracias otra vez |
#10
|
|||
|
|||
Problemas con exit
Os adjunto la pantalla en la que estoy para que tengáis más información-
Un saludo y gracias de nuevo: |
Herramientas | Buscar en Tema |
Desplegado | |
|
|