en la primer columna tengo un tilde "autorizado" al darle clic se ejecuta este codigo
Código Delphi
[-] if Column.FieldName='auto' then begin
if fdq_maestroauto.value = 1 then begin
if Application.MessageBox('El pedido aún no esta autorizado, Confirma?','Atención',MB_YESNO)=id_yes then
begin
fdq_maestroauto.value := 0; fdq_maestro.Post;
Dbgrid1.Repaint;
end;
end
else begin
if Application.MessageBox('El pedido ya esta autorizado o no requiere CAI, Confirma?','Atención',MB_YESNO)=id_yes then
begin
fdq_maestroauto.value := 1; fdq_maestro.Post;
Dbgrid1.Repaint;
end;
end;
end;
Hasta ahí todo bien, la idea es que al darle clic al segundo check, de la segunda columna sería, verifique si el primer check esta tildado, o mejor dicho, si el valor del campo "auto" es 1.
Código Delphi
[-] if Column.FieldName='armado' then
begin
if fdq_maestroarmado.value = 1 then
begin
if Application.MessageBox('El pedido aún no esta armado, Confirma?','Atención',MB_YESNO)=id_yes then
begin
fdq_maestroarmado.value := 0;
fdq_maestro.Post;
Dbgrid1.Repaint;
end;
end
else
begin
if fdq_maestroauto.Value = 1 then begin
if Application.MessageBox('El pedido ya esta armado, Confirma?','Atención',MB_YESNO)=id_yes then
begin
fdq_maestroarmado.value := 1;
fdq_maestro.Post;
Dbgrid1.Repaint;
end;
end
else
begin
MessageBox(0, 'El pedido figura como "No autorizado"', 'ATENCIÓN', MB_ICONWARNING or MB_OK);
DBGrid1.Refresh;
end;
end;
end;
Tambien funciona de mil maravillas, pero... si luego de que se ejecute este código le doy de nuevo a la primer columna, (FieldName = 'auto'), me vuelve a mostrar el mensaje de que no esta autorizado, y en el paso a paso corrobore que en esta linea de código
Código Delphi
[-] if Column.FieldName='auto' then
El valor de FieldName es = 'armado' en lugar de ser 'auto' que es la columna que estoy dándole clic. Es como si la variable FieldName no se actualizara.