Buen dia compañeros....
a ver si alguno de ustedes les ha pasado esto...
tengo un TQuery en una forma, que tiene asignada la siguiente sentencia:
Código:
Select sl_aseg as asegurado,
cl_telc,cl_telo,cl_telo2,cl_celu,cl_expe,cl_email,cl_email2,cl_indica,
CAST((CASE When p.sl_edo = 'V' then 'VIGENTE'
When p.sl_edo = 'X' then 'REEXPEDIDA'
When p.sl_edo = 'V' and CURDATE() > p.sl_vig2 then 'VENCIDA'
When p.sl_edo = 'C' and (SL_RENOV is null or SL_RENOV='') then 'CANCELADA'
when p.sl_edo = 'C' and (SL_RENOV is not null) then 'RENOVADA' End) as char) as estado,
CAST((CASE When p.sl_fpa = 2 THEN 'SEMESTRAL'
When p.sl_fpa = 3 THEN 'TRIMESTRAL'
When p.sl_fpa = 4 THEN 'MENSUAL'
When p.sl_fpa = 5 THEN 'CUATRIMESTRAL'
When p.sl_fpa = 6 THEN 'QUINCENAL'
When p.sl_fpa = 7 THEN 'CATORCENAL'
When p.sl_fpa = 8 THEN 'ESP. 10 RECIBOS'
When p.sl_fpa = 1 THEN 'CONTADO' END) AS CHAR) as formapag,
CAST((CASE when p.sl_vpag='E' then 'ELECTRONICA'
when p.sl_vpag='A' then 'AGENTE'
when p.sl_vpag='VA' then 'VALE'
when p.sl_vpag='M' then 'MIXTA' end) as char) as viapago,
sl_pol as re_pol,sl_sol,
sl_pri,sl_descto,sl_derp,sl_pfra,sl_iva,sl_cia,sl_vig1,sl_vig2,sl_obs1,sl_vpag,
((sl_pri-sl_descto)+sl_iva+sl_derp+sl_pfra) as totpol,
po_nom as ramdesc,po_tipo as ramtipo,'' as cobdesc,nom as ciadesc, nom,
garantiapag,garanemision,garanaplicacion
from polizas p
inner join compania on sl_cia=cia
inner join clientes on cl_num=sl_num
inner join ramos on po_cve=sl_tipo
Todo en orden cuando ejecuto el query, sin embargo, cuando en tiempo de ejecucion, actualizo uno de esos registros me dice que el campo "estado" no existe en la lista de campos
El codigo que utilizo para actualizar la informacion del registro es:
Código Delphi
[-] Qpolizas.DisableControls;
If Evale.Text <> '' then
begin
Dm.Qactualiza.SQL.text := 'update polizas set garantiapag='+quotedstr(Evale.text)+
',garanemision='+quotedstr(formatdatetime('yyyy-mm-dd',Efechaval.date))+
',garanaplicacion='+quotedstr(formatdatetime('yyyy-mm-dd',date))+
' where sl_pol='+quotedstr(Qpolizas.fieldbyname('re_pol').asstring)+
' and sl_cia='+quotedstr(Qpolizas.fieldbyname('sl_cia').asstring);
end
else
begin
Dm.Qactualiza.SQL.text := 'update polizas set garantiapag='+quotedstr('')+
',garanemision=:nulfecha,garanaplicacion=:nulfecha'+
' where sl_pol='+quotedstr(Qpolizas.fieldbyname('re_pol').asstring)+
' and sl_cia='+quotedstr(Qpolizas.fieldbyname('sl_cia').asstring);
Dm.Qactualiza.ParamByName('nulfecha').Clear;
end;
Qpolizas.EnableControls;
Qpolizas.RefreshRecord;
Alguna idea?