Código PHP:
procedure TfrmSupVision.wwDBGrid1FieldChanged(Sender: TObject;
Field: TField);
Var
cadenaSQL,FilaCheck,Lin_Codi,Alb_Codi,Per_Codi,accountnum,dataareaid ,
varDades , varUnitatsRestants : string;
Cantidad , UnitatsServidesBD , botoseleccionat : Integer ;
Marca : TBookMarkStr;
begin
Lin_Codi := query_supvision.FieldbyName('LIN_Codi').AsString;
Alb_Codi := query_supvision.FieldbyName('ALB_Codi').AsString;
Per_Codi := query_supvision.FieldbyName('Per_Codi').AsString;
Accountnum := query_supvision.FieldbyName('accountnum').AsString;
Dataareaid := query_supvision.FieldbyName('dataareaid').AsString;
Cantidad := query_supvision.FieldbyName('Cantidad').asinteger;
UnitatsServidesBD := query_supvision.FieldbyName('Unitats_Servides').asinteger;
if ((Lin_Codi <> '') and (Dataareaid <> '') and (Alb_Codi <> '') and (Per_Codi <> '') and (Accountnum <> '') AND (inttostr(Cantidad) <> '') ) then begin
if (combobox1.text = 'TODOS') then
FreeAndNil(Marca);
Marca := query_supvision.Bookmark;
FilaCheck := wwDBGrid1.GetFieldValue(7);
if (FilaCheck = 'S') then begin
if (Cantidad = 1) then begin
cadenaSQL := 'SQL XXXXXXXXXXX';
ModuloDatos.Ejecutar_SQL(cadenaSQL);
cadenaSQL := 'SQL XXXXXXXXX';
ModuloDatos.Ejecutar_SQL(cadenaSQL);
try
query_supvision.Close;
query_supvision.Open;
except
showmessage('Error al abrir/cerrar BD vuelve a intentar lo');
end;
end
else begin // Si hi ha més d'una unitat d'aquella linea de pedido ==> FORM NOU
try
Application.CreateForm (TfrmUnidadesPedidoVenta, frmUnidadesPedidoVenta);
except
;
end;
frmUnidadesPedidoVenta.CarregaDades(Cantidad,UnitatsServidesBD);
if (Cantidad > 0) and (UnitatsServidesBD >=0 )then begin
frmUnidadesPedidoVenta.ShowModal;
varDades := frmUnidadesPedidoVenta.rebreDades;
varUnitatsRestants := frmUnidadesPedidoVenta.rebreUnitatsRestants;
cadenaSQL := 'SQL XXXXXXXXXXXXXXXXXX';
ModuloDatos.Ejecutar_SQL(cadenaSQL);
cadenaSQL := 'SQL XXXXXXXXXXXXXXXXXX';
ModuloDatos.Ejecutar_SQL(cadenaSQL);
query_supvision.Close;
query_supvision.Open;
end
else begin
showmessage('Error al recibir los datos');
end;
end;
end
else if (FilaCheck = 'N') then
if (Cantidad = UnitatsServidesBD) then begin
botoseleccionat := MessageDlg('Estas seguro que quieres borrar las unidades servidas ?',mtCustom,[mbYes,mbNo], 0);
if botoseleccionat = mrYes then begin
cadenaSQL := 'SQL XXXXXXXXXXXXXXXXXX';
ModuloDatos.Ejecutar_SQL(cadenaSQL);
cadenaSQL := 'SQL XXXXXXXXXXXXXXXXXX';
ModuloDatos.Ejecutar_SQL(cadenaSQL);
try
query_supvision.Close;
query_supvision.Open;
except
showmessage('Error abriendo la base de datos');
end
end
else begin
query_supvision.Cancel; // refrescar
end;
end;
end
else begin
showmessage('Este cliente no tiene más albaranes por editar');
end;
if (combobox1.text = 'TODOS') then
query_supvision.Bookmark := Marca;
end;