- string ls_new_codigo, ls_co_est_aviso, ls_mensaje
- datetime ldt_fe_cam
- string ls_ti_aviso
- ldt_fe_cam = f_retorna_current('S')
- ls_co_est_aviso = trim(em_co_estado.text)
- //STS2368 Begin 07-04-2009 JOlmedo
- IF is_opcion = 'AVISOS' THEN
- //Obtengo el tipo de aviso
- SELECT TRIM(a.ti_aviso)
- INTO :ls_ti_aviso
- FROM aviso a
- WHERE a.co_aviso = :is_codigo;
- IF ls_ti_aviso = "D" THEN
- //Si es un desplegado
- IF NOT(is_ti_trabajo = "AVI" OR is_ti_trabajo = "MOD" OR is_ti_trabajo = "BAN") THEN
- //Si no es ninguno de los tipos de trabajo: aviso, modulo completo o banner
- MessageBox("Atención","El aviso no cumple las condiciones para ingresar en la bolsa de trabajo.")
- RETURN
- END IF
- ELSE
- //No es un desplegado
- MessageBox("Atención","El aviso tiene que ser de tipo DESPLEGADO para pasar a la bolsa de trabajo.")
- RETURN
- END IF
- END IF
- //STS2358 End
- ls_mensaje = '¿ Esta seguro de enviar a Bolsa de Trabajo de ' + is_opcion +' ?'
- if messagebox('Aviso del Sistema','¿ Esta seguro de Grabar ?',exclamation!,yesno!,2)=2 then return
- Setpointer(Hourglass!)
- f_modo_opera_bd('LOCK-10')
- f_modo_opera_bd('UPDATE')
- f_modo_opera_bd('BEGIN')
- IF is_opcion = 'AVISOS' THEN
- /*Grabación de todos los Estados*/
- UPDATE aviso
- SET co_est_aviso = "ABT",
- co_usuario = :s_datos_usuario.co_usuario,
- fe_cambio = :ldt_fe_cam,
- co_est_anterior = :ls_co_est_aviso
- WHERE co_aviso = :is_codigo;
- if sqlca.sqlcode < 0 then
- f_mensaje(sqlca,true)
- return
- end if
- /*Inserta en los Datos en la bolsa de Trabajo*/
- insert into bolsa_trabajo
- (co_diagramador, co_logo, co_aviso, co_boceto, ti_trabajo, fe_ingreso,
- fl_desasignacion, fl_envio, fl_bloqueo, fl_asignacion)
- values
- //STS2368 Begin 07-04-2009
- //(null, null, :is_codigo, null, 'AVI', :ldt_fe_cam,
- // '0', '1', '0','0');
- (null, null, :is_codigo, null, :is_ti_trabajo, :ldt_fe_cam, '0', '1', '0','0');
- //STS2368 End
- if sqlca.sqlcode < 0 then
- f_mensaje(sqlca, false)
- return
- end if
- ELSEIF is_opcion = 'BOCETOS' THEN
- /*Grabación de todos los Estados*/
- UPDATE boceto
- SET co_est_aviso = "BBT",
- co_usuario = :s_datos_usuario.co_usuario,
- fe_cambio = :ldt_fe_cam,
- co_est_anterior = :ls_co_est_aviso
- WHERE co_boceto = :is_codigo;
- if sqlca.sqlcode < 0 then
- f_mensaje(sqlca,true)
- return
- end if
- /*Inserta en los Datos en la bolsa de Trabajo*/
- insert into bolsa_trabajo
- (co_diagramador, co_logo, co_aviso, co_boceto, ti_trabajo, fe_ingreso,
- fl_desasignacion, fl_envio, fl_bloqueo, fl_asignacion)
- values
- //STS2368 Begin 07-04-2009
- //(null, null, null, :is_codigo, 'BOC', :ldt_fe_cam,
- // '0', '1', '0','0');
- (null, null, null, :is_codigo, :is_ti_trabajo, :ldt_fe_cam, '0', '1', '0','0');
- //STS2368 End
- if sqlca.sqlcode < 0 then
- f_mensaje(sqlca, false)
- return
- end if
- ELSE
- f_modo_opera_bd('ROLLBACK')
- Messagebox("Mensaje del Sistema","Opción no disponible")
- Return
- END IF
- f_modo_opera_bd('COMMIT')
- Setpointer(Arrow!)
- messagebox('Mensaje del Sistema','Grabado Concluido',information!)
- wf_setea_botones("LIMPIA")