Componentes.Terceros.DevExp.../official/x.26/ExpressQuantumGrid 6/Demos/CBuilder/MasterDetailMultiDemo/MasterDetailMultiDemoData.cpp

85 lines
3.2 KiB
C++
Raw Normal View History

//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "MasterDetailMultiDemoData.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "cxClasses"
#pragma link "cxGridTableView"
#pragma link "cxStyles"
#pragma link "cxGridBandedTableView"
#pragma link "cxGridCardView"
#pragma resource "*.dfm"
TMasterDetailMultiDemoMainDM *MasterDetailMultiDemoMainDM;
//---------------------------------------------------------------------------
__fastcall TMasterDetailMultiDemoMainDM::TMasterDetailMultiDemoMainDM(TComponent* Owner)
: TDataModule(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TMasterDetailMultiDemoMainDM::qryFilmsPersonsCalcFields(
TDataSet *DataSet)
{
qryFilmsPersonsName->AsString = qryFilmsPersonsFIRSTNAME->AsString + " " +
qryFilmsPersonsSECONDNAME->AsString;
}
//---------------------------------------------------------------------------
void TMasterDetailMultiDemoMainDM::InsertNewPerson()
{
tblPersonsHelper->Insert();
tblPersonsHelperFIRSTNAME->AsString = qryFilmsPersonsFIRSTNAME->AsString;
tblPersonsHelperSECONDNAME->Value = qryFilmsPersonsSECONDNAME->Value;
tblPersonsHelperGENDER->AsBoolean = qryFilmsPersonsGender->AsBoolean;
tblPersonsHelperBIRTHNAME->AsString = qryFilmsPersonsBIRTHNAME->AsString;
tblPersonsHelperDATEOFBIRTH->AsDateTime = qryFilmsPersonsDATEOFBIRTH->AsDateTime;
tblPersonsHelperBIRTHCOUNTRY->AsString = qryFilmsPersonsBIRTHCOUNTRY->AsString;
tblPersonsHelperLOCATIONOFBIRTH->AsString =
qryFilmsPersonsLOCATIONOFBIRTH->AsString;
tblPersonsHelperBIOGRAPHY->AsString = qryFilmsPersonsBIOGRAPHY->AsString;
tblPersonsHelperNICKNAME->AsString = qryFilmsPersonsNICKNAME->AsString;
tblPersonsHelperHOMEPAGE->AsString = qryFilmsPersonsHOMEPAGE->AsString;
tblPersonsHelper->Post();
}
//---------------------------------------------------------------------------
void TMasterDetailMultiDemoMainDM::InsertNewPersonStaff()
{
tblPersonsStaffHelper->Insert();
tblPersonsStaffHelperPERSONID->AsInteger = tblPersonsHelperID->AsInteger;
tblPersonsStaffHelperPERSONLINEID->AsInteger =
qryFilmsPersonsPersonLineID->AsInteger;
tblPersonsStaffHelper->Post();
}
//---------------------------------------------------------------------------
void __fastcall TMasterDetailMultiDemoMainDM::qryFilmsPersonsBeforePost(
TDataSet *DataSet)
{
if (FIsInserting) {
InsertNewPerson();
InsertNewPersonStaff();
DataSet->Cancel();
DataSet->Close();
DataSet->Open();
TLocateOptions ALocateOptions;
ALocateOptions.Clear();
DataSet->Locate("ID",tblPersonsStaffHelperID->AsInteger,ALocateOptions);
Abort;
FIsInserting = false;
}
}
//---------------------------------------------------------------------------
void __fastcall TMasterDetailMultiDemoMainDM::qryFilmsPersonsAfterInsert(
TDataSet *DataSet)
{
FIsInserting = true;
}
//---------------------------------------------------------------------------