Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
begin
if CheckBox1.Checked then
DocAuto(DBGrid1, 9, 'Список контрагентов по группе ' + dblcbType.Text)
else
DocAuto(DBGrid1, 9, Self.Caption);
end;
//Сортировка данных в таблице по выбранному столбцу:
procedure TfmContrag.DBGrid1TitleClick(Column: TColumn);
begin
try
(DBGrid1.DataSource.DataSet as TADODataSet).Sort := Column.FieldName;
except
Application.MessageBox('Сортировка по данному полю невозможна', 'Информация', MB_OK+MB_ICONINFORMATION)
end;
end;
//Фильтрация контрагентов:
procedure TfmContrag.CheckBox1Click(Sender: TObject);
begin
if CheckBox1.Checked and (dblcbType.KeyValue <> Null) then
begin
DM.dstContrag.Filter := 'ТипКонтрагентаID = ' + IntToStr(dblcbType.KeyValue);
DM.dstContrag.Filtered := True
end
else
DM.dstContrag.Filtered := False;
end;
procedure TfmContrag.bbtCloseClick(Sender: TObject);
begin
Close;
end;
end.
Программный модуль uDeal.pas
unit uDeal;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, DBCtrls, ExtCtrls, Grids, DBGrids, ComCtrls;
type
TfmDeal = class(TForm)
DBGrid1: TDBGrid;
Panel1: TPanel;
DBNavigator1: TDBNavigator;
bbtClose: TBitBtn;
bbtPrint: TBitBtn;
DBGrid2: TDBGrid;
Splitter1: TSplitter;
GroupBox1: TGroupBox;
dblcbDealType: TDBLookupComboBox;
dtpDate1: TDateTimePicker;
dtpDate2: TDateTimePicker;
chbDealType: TCheckBox;
chbDate1: TCheckBox;
chbDate2: TCheckBox;
chbRealtor: TCheckBox;
dblcbRealtor: TDBLookupComboBox;
bbtContract: TBitBtn;
procedure FormShow(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure bbtPrintClick(Sender: TObject);
procedure bbtCloseClick(Sender: TObject);
procedure DBGrid1EditButtonClick(Sender: TObject);
procedure DBGrid1Enter(Sender: TObject);
procedure chbDate1Click(Sender: TObject);
procedure bbtContractClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
fmDeal: TfmDeal;
implementation
uses uDM, uDocs, uRealty, DB;
{$R *.dfm}
procedure TfmDeal.FormShow(Sender: TObject);
begin
DM.dstDeal.Open;
DM.dstDealPart.Open;
DM.dstDeal.Sort := 'Дата';
end;
procedure TfmDeal.FormClose(Sender: TObject; var Action: TCloseAction);
begin
DM.dstDealPart.Close;
DM.dstDeal.Close;
end;
procedure TfmDeal.bbtPrintClick(Sender: TObject);
begin
DocAuto(DBGrid1, 9, Self.Caption);
end;
procedure TfmDeal.bbtCloseClick(Sender: TObject);
begin
Close;
end;
//При щелчке по кнопке "..." в ячейке "Недвижимость" в DBGrid'е на экран выводится
//список объектов для выбора и добавления из списка:
procedure TfmDeal.DBGrid1EditButtonClick(Sender: TObject);
begin
fmRealty.bbtOK.Visible := True;
if fmRealty.ShowModal = mrOK then
begin
if not (DM.dstDeal.State in [dsEdit, dsInsert]) then
DM.dstDeal.Edit;
DM.dstDeal.FieldByName('НедвижID').Value := DM.dstRealty.FieldByName('ID').Value;
DM.dstDeal.FieldByName('РиэлторID').Value := DM.dstRealty.FieldByName('РиэлторID').Value;
DM.dstDeal.FieldByName('ТипСделкиID').Value := DM.dstRealty.FieldByName('ТипСделкиID').Value;
DM.dstDeal.FieldByName('Сумма').Value := DM.dstRealty.FieldByName('Цена').Value;
DM.dstDeal.FieldByName('Комиссия').Value := DM.dstRealty.FieldByName('Комиссия').Value;
DM.dstDeal.Post;
//В стороны сделки добавляется контрагент по выбранному объекту:
if not ((DM.dstDealPart.RecordCount > 0) and
(DM.dstDealPart.Locate('КонтрагентID', DM.dstRealty.FieldByName('КонтрагентID').Value, []))) then
begin
if not (DM.dstDealPart.State in [dsEdit, dsInsert]) then
DM.dstDealPart.Edit;
DM.dstDealPart.FieldByName('КонтрагентID').AsInteger := DM.dstRealty.FieldByName('КонтрагентID').AsInteger;
DM.dstDealPart.Post;
end;
if Application.MessageBox('Отметить предложение указанного объекта в базе как более неактуальное?',
'Вопрос', MB_YESNO + MB_ICONQUESTION) = IDYES then
begin
DM.dstRealty.Edit;
DM.dstRealty.FieldByName('Актуально').AsBoolean := False;
DM.dstRealty.Post;
end;
end;
fmRealty.bbtOK.Visible := False;
end;
//DBNavigator1 работает с двумя наборами данных, в зависимости от того, какой
//из них выбран - Сделки или Стороны сделки:
procedure TfmDeal.DBGrid1Enter(Sender: TObject);
begin
DBNavigator1.DataSource := (Sender as TDBGrid).DataSource;
end;
//Фильтрация списка сделок по заданным критериям:
procedure TfmDeal.chbDate1Click(Sender: TObject);
var
Filter: string;
begin
Filter := '';
if chbDate1.Checked then
Filter := 'Дата >= ' + QuotedStr(DateToStr(dtpDate1.Date));
if chbDate2.Checked then
begin
if Filter <> '' then
Filter := Filter + ' and ';
Filter := Filter + 'Дата <= ' + QuotedStr(DateToStr(dtpDate2.Date));
end;
if chbRealtor.Checked and (dblcbRealtor.KeyValue <> Null) then
begin
if Filter <> '' then
Filter := Filter + ' and ';
Filter := Filter + 'РиэлторID = ' + IntToStr(dblcbRealtor.KeyValue);
end;
if chbDealType.Checked and (dblcbDealType.KeyValue <> Null) then
begin
if Filter <> '' then
Filter := Filter + ' and ';
Filter := Filter + 'ТипСделкиID = ' + IntToStr(dblcbDealType.KeyValue);
end;
if Filter <> '' then
begin
DM.dstDeal.Filter := Filter;
DM.dstDeal.Filtered := True;
end
else
DM.dstDeal.Filtered := False;
end;
//Формирование договора по сделке:
procedure TfmDeal.bbtContractClick(Sender: TObject);
begin
if DM.dstDeal.FieldByName('ТипСделкиID').AsInteger = 1 then
DocContract //Договор купли-продажи
else if DM.dstDeal.FieldByName('ТипСделкиID').AsInteger = 2 then
DocRent //Договор аренды
else
Application.MessageBox('Для сделки "Обмен" форма договора не предусмотрена!',
'Информация', MB_OK + MB_ICONEXCLAMATION);
end;
end.
Программный модуль uDistrict.pas
unit uDistrict;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, DBCtrls, ExtCtrls, Grids, DBGrids;
type
TfmDistrict = class(TForm)
DBGrid1: TDBGrid;
Panel1: TPanel;
DBNavigator1: TDBNavigator;
bbtClose: TBitBtn;
bbtPrint: TBitBtn;
procedure FormShow(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure bbtPrintClick(Sender: TObject);
procedure bbtCloseClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
fmDistrict: TfmDistrict;
implementation
uses uDM, uDocs, uCard, uRealty, uReqCard, uRequest;
{$R *.dfm}
procedure TfmDistrict.FormShow(Sender: TObject);
begin
DM.dstDistrict.Open;
DM.dstDistrict.Sort := 'Район';
end;
procedure TfmDistrict.FormClose(Sender: TObject; var Action: TCloseAction);
begin
//Если форма, на которой используется набор данных в данный момент закрыта, то
//набор данных также закрывается:
if (not fmCard.Showing) and (not fmReqCard.Showing) and (not fmRequest.Showing)
and (not fmRealty.Showing) then
DM.dstDistrict.Close;
end;
procedure TfmDistrict.bbtPrintClick(Sender: TObject);
begin
DocAuto(DBGrid1, 1, Self.Caption);
end;
procedure TfmDistrict.bbtCloseClick(Sender: TObject);
begin
Close;
end;
end.
Программный модуль uDM.pas
unit uDM;
interface
uses
SysUtils, Classes, DB, ADODB;
type
TDM = class(TDataModule)
ADOConnection1: TADOConnection;
dstRealtyType: TADODataSet;
dsRealtyType: TDataSource;
dstDealType: TADODataSet;
dsDealType: TDataSource;
dstDistrict: TADODataSet;
dsDistrict: TDataSource;
dstContrType: TADODataSet;
dsContrType: TDataSource;
dstRealtor: TADODataSet;
dsRealtor: TDataSource;
dstRealty: TADODataSet;
dsRealty: TDataSource;
dstRealtyID: TAutoIncField;
dstRealtyDSDesigner: TWideStringField;
dstRealtyID2: TIntegerField;
dstRealtyID3: TIntegerField;
dstRealtyID4: TIntegerField;
dstRealtyDSDesigner2: TWideStringField;
dstRealtyID5: TIntegerField;
dstRealtyDSDesigner3: TBCDField;
dstRealtyDSDesigner4: TBooleanField;
dstRealtyIntegerField: TStringField;
dstRealtyField: TStringField;
dstContrag: TADODataSet;
dsContrag: TDataSource;
dstContragID: TAutoIncField;
dstContragID2: TIntegerField;
dstContrag_: TWideStringField;
dstContragDSDesigner: TWideStringField;
dstContragDSDesigner2: TWideStringField;
dstContragDSDesigner3: TWideStringField;
dstContragDSDesigner4: TWideStringField;
dstContragDSDesigner5: TWideStringField;
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |


