procedure TEdOfertaFrm.PzDsDataChange(Sender: TObject; Field: TField);
begin
if (trim(PzOfertas.FieldByName('TIPOM').AsString)<>'') then
if (PzOfertas.FieldByName('VCORTE').AsFloat<>0) or
(PzOfertas.FieldByName('VPz').AsFloat<>0) then
DbGrid1.Columns[5].Readonly := true
else
DbGrid1.Columns[5].Readonly := false
else
DbGrid1.Columns[5].Readonly := false ;
end;
procedure TEdOfertaFrm.DBGrid1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (DbGrid1.SelectedField.FieldName='VEXTRAS') and (key=VK_RIGHT) then begin
DbGrid1.SelectedField:= OfertasFrm.PzofertasVPU;
key := 0
end;
if (DbGrid1.SelectedField.FieldName='VPU') and (key=VK_Left) then begin
DbGrid1.SelectedField:= OfertasFrm.PzofertasVEXTRAS;
key := 0
end;
if (DbGrid1.SelectedField.FieldName='VPU') and (key=VK_RIGHT) or
(DbGrid1.SelectedField.FieldName='REF') and (key=VK_LEFT) then
key := 0;
if (key=VK_HOME) then begin
DbGrid1.SelectedField:= OfertasFrm.PzofertasREF;
key := 0
end;
if (key=VK_END) then begin
DbGrid1.SelectedField := OfertasFrm.PzofertasVPU;
key := 0
end;
if (key=VK_DELETE) and (Shift=[ssCtrl]) then
Key := 0;
if (key=VK_INSERT) then
if (Shift<>[ssShift]) and (Shift<>[ssCtrl]) then
Key := 0;
if ((key=VK_F3) and (
(DbGrid1.Selectedfield.FieldName = 'VPZ') or
(DbGrid1.Selectedfield.FieldName = 'VCORTE' ) or
(DbGrid1.Selectedfield.FieldName = 'VTRATMTO') or
(DbGrid1.Selectedfield.FieldName = 'VEXTRAS'))) then
DBGrid1EditButtonClick(nil);
end;
procedure TOfertasFrm.PzOfertasAfterScroll(DataSet: TDataSet);
begin
Aceptar1.Enabled := not PzOfertas.IsEmpty and (PzOfertasACEPTADA.AsString <>'S')
end;
procedure TOfertasFrm.PzOfertasCalcFields(DataSet: TDataSet);
begin
PzOfertasACEPTADACALC.AsString := CompletaSiNo(PzOfertasACEPTADA.AsString);
try
PzOfertasImporte.AsFloat := PzOfertasVPU.AsFloat * PzOfertasQPZ.AsInteger;
PzOfertasImporteMaterial.AsFloat := PzOfertasVPz.AsFloat * PzOfertasQPZ.AsInteger;
except
end;
try
OfertasCANT.Value := PzOfertasTOTAL.Value
except
end;
end;
procedure TOfertasFrm.PzOfertasBeforePost(DataSet: TDataSet);
begin
if not modGestor.MaterialValido(PzOfertasTIPOM.AsString) then
if PzOfertas.State in [dsEdit,dsInsert] then
PzOfertas.Cancel;
end;
procedure TOfertasFrm.PzOfertasAfterPost(DataSet: TDataSet);
begin
try
OfertasCANT.Value := PzOfertasTOTAL.Value
except
end;
end;