Clarion - controlar take completed en form

   
Vista:

controlar take completed en form

Publicado por guillermo (143 intervenciones) el 03/03/2009 19:00:26
hola a todos. tengo un form que actualiza movimientos de stock y en el take completed puse codigo que hace que cuando se complete la actualizacion del archivo movimientos actualize la existencia en el archivo stock. lo que yo quiero saber es como volver todo atras si da algun error la actualizacion del archivo stock que yo hago a mano, es decir, que codigo debo poner para volver todo atras.

muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
información
Otras secciones de LWP con contenido de Clarion
- Código fuente de Clarion
- Cursos de Clarion
información
Códigos de Clarion
- Llamar al form para insertar desde el menu

RE:controlar take completed en form

Publicado por Bassi, Rodrigo (112 intervenciones) el 03/03/2009 20:29:18
HOLA....

YO HAGO ESTAS TRANSACCIONES EN LOS PROCESOS, O EN ALGUN BOTON EN EL CUAL TENGO QUE ACTUALIZAR ALGUN ARCHIVO, O BORRARLO O GRABARLO....

ESPERO TE SIRVA.
Saludos.

!! - - - - EN OPEN FILES - - - - !!

Relate:TABLA1.UseLogout=0 ! False
Relate:TABLA2.UseLogout=0 ! False
TABLA1{PROP:LOGOUT}=1
TABLA2{PROP:LOGOUT}=1
LOGOUT(5)
IF ERRORCODE() THEN
BEEP(BEEP:SystemExclamation)
YIELD()
MESSAGE('Error con el logout'&|
'|Error: ('&ERRORCODE()&' ) '&CLIP(ERROR()), |
0{PROP:TEXT}, ICON:Exclamation)
LOC:trans = 0
LOC:deta = 'Error'
stop('error')
ELSE
LOC:trans = 1
LOC:deta = ''
END!IF

!! - - - - EN EL KILL PROCEDURE VIRTUAL - - - - !!

BEEP(BEEP:SystemQuestion)
YIELD()
IF LOC:trans = 0 OR ThisWindow.Response = 2
ROLLBACK
MESSAGE(LOC:ERROR,'ROLLBACK')
ELSE
COMMIT
END!IF
Relate:TABLA1.UseLogout=1 ! True
Relate:TABLA2.UseLogout=1 ! True

!! - - - - ROUTINE- - - - !!

ErrHandler ROUTINE
IF NOT ERRORCODE() THEN EXIT.
LOC:Error = 'Error en el Proceso - ' & ERROR()&ERRORCODE()
LOC:trans = 0
LOC:deta = 'Error'
EXIT

!! - - - - CUANDO GRABO, ACTUALIZO O ELIMINO EN VEZ DE PREGUSTAR POR ERRORCODE LLAMOA A LA ROUTINE - - - -!!

DO ErrHandler
IF LOC:trans = 0
RETURN Level:Fatal
END!IF
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar