Диплом: Автоматизация обработки заявок АО "Сейм-Агро"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
96
,c.ИНН AS [ИНН]
,m.ФИО AS [Менеджер]
,s.Название AS [Статус]
,o.Стоимость AS [Стоимость]
from Заявка o
inner join Клиент c on c.Код=o.Клиент_код
inner join Статус s on s.Код=o.Статус_код
inner join Менеджер m on m.Код=o.Менеджер_код
where o.Поступление between @sd and @ed
END
ALTER PROCEDURE [dbo].[pr_ReportInput]
-- Add the parameters for the stored procedure here
@OrderID int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
select
o.Код AS [Номер]
,o.Поступление AS [Дата заявки]
,c.Название AS [Клиент]
,i.Поставлено AS [Дата поставки]
,i.Адрес AS [Адрес]
,case when isNull(i.Выполнена,0)=0 then 'Не выполнено' else
'Выполнено' end AS [Состояние]
,v.Название AS [Вид]
,s.Название AS [Сорт]
,p.Количество AS [Количество]
from Заявка o
97
inner join Клиент c on c.Код=o.Клиент_код
inner join Поставка i on i.Заявка_код=o.Код
inner join Партия p on p.Поставка_код=i.Код
inner join Продукция itm on itm.Код=p.Продукция_код
left join Вид v on v.Код=itm.Вид_код
left join Сорт s on s.Код=itm.Сорт_код
where o.Код=@OrderID
END
ALTER PROCEDURE [dbo].[pr_ReportOrderID]
-- Add the parameters for the stored procedure here
@OrderID int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
select
o.Код AS [Номер]
,o.Поступление AS [Дата заявки]
,c.Название AS [Клиент]
,c.ИНН AS [ИНН]
,v.Название AS [Вид]
,s.Название AS [Сорт]
, SUM(p.Количество) AS [Количество]
, SUM(p.Стоимость) AS [Стоимость]
, o.Стоимость AS [Итог]
from Заявка o
inner join Клиент c on c.Код=o.Клиент_код
inner join Поставка i on i.Заявка_код=o.Код
inner join Партия p on p.Поставка_код=i.Код
98
inner join Продукция itm on itm.Код=p.Продукция_код
left join Вид v on v.Код=itm.Вид_код
left join Сорт s on s.Код=itm.Сорт_код
where o.Код=@OrderID
GROUP BY o.Код, o.Поступление, c.Название, c.ИНН, v.Название,
s.Название, o.Стоимость
END
99
ПРИЛОЖЕНИЕ В
Исходный код приложения
unit uMain;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Buttons, Vcl.Menus,
Vcl.ExtCtrls, Data.DB, Vcl.DBCtrls, Vcl.Grids, Vcl.DBGrids;
type
TfrmMain = class(TForm)
pnlFilter: TPanel;
pnlMain: TPanel;
pnlSub: TPanel;
mm: TMainMenu;
imMain: TMenuItem;
imLibrary: TMenuItem;
imReport: TMenuItem;
imSetting: TMenuItem;
imManager: TMenuItem;
imLinking: TMenuItem;
imClient: TMenuItem;
imBlack0: TMenuItem;
imClose: TMenuItem;
imProduct: TMenuItem;
imBlack1: TMenuItem;
imLibrary1: TMenuItem;
imLibrary2: TMenuItem;
imLibrary3: TMenuItem;
100
imReport1: TMenuItem;
Label1: TLabel;
pmMain: TPopupMenu;
pmSub: TPopupMenu;
imAddMain: TMenuItem;
imEditMain: TMenuItem;
imDeleteMain: TMenuItem;
imReport2: TMenuItem;
imAddSub: TMenuItem;
imEditSub: TMenuItem;
imDeleteSub: TMenuItem;
imPart: TMenuItem;
imReport3: TMenuItem;
grdMain: TDBGrid;
grdSub: TDBGrid;
cbStatusFilter: TDBLookupComboBox;
procedure FormShow(Sender: TObject);
procedure pmMainPopup(Sender: TObject);
procedure pmSubPopup(Sender: TObject);
procedure imAddMainClick(Sender: TObject);
procedure imEditMainClick(Sender: TObject);
procedure imDeleteMainClick(Sender: TObject);
procedure imDeleteSubClick(Sender: TObject);
procedure imEditSubClick(Sender: TObject);
procedure imAddSubClick(Sender: TObject);
procedure imGridClick(Sender: TObject);
procedure imReportClick(Sender: TObject);
procedure imLinkingClick(Sender: TObject);
procedure imCloseClick(Sender: TObject);
private
{ Private declarations }
public
101
{ Public declarations }
end;
var
frmMain: TfrmMain;
implementation
{$R *.dfm}
uses
uOrder, uPost, uGrid, uReport, uDM, uSetLink;
procedure TfrmMain.FormShow(Sender: TObject);
begin
imClient.Visible:=DM.user.Admin=false;
imLibrary.Visible:=DM.user.Admin=false;
imManager.Visible:=DM.user.Admin=true;
end;
procedure TfrmMain.imAddMainClick(Sender: TObject);
var
frm: TfrmOrder;
begin
Application.CreateForm(TfrmOrder,frm);
frm.Tag:=0;
DM.tblOrder.Append;
frm.ShowModal;
frm.Free;
end;
procedure TfrmMain.imAddSubClick(Sender: TObject);
102
var
frm: TfrmPost;
begin
Application.CreateForm(TfrmPost,frm);
frm.Tag:=0;
DM.tblPost.Append;
frm.ShowModal;
frm.Free;
end;
procedure TfrmMain.imCloseClick(Sender: TObject);
begin
Application.Terminate;
end;
procedure TfrmMain.imDeleteMainClick(Sender: TObject);
begin
if MessageDlg('Вы действительно хотите удалить
запись?',mtWarning,mbOkCancel,0)=mrOk then
grdMain.DataSource.DataSet.Delete;
end;
procedure TfrmMain.imDeleteSubClick(Sender: TObject);
begin
if MessageDlg('Вы действительно хотите удалить
запись?',mtWarning,mbOkCancel,0)=mrOk then
grdSub.DataSource.DataSet.Delete;
end;
procedure TfrmMain.imEditMainClick(Sender: TObject);
var
frm: TfrmOrder;
103
begin
Application.CreateForm(TfrmOrder,frm);
frm.Tag:=1;
DM.tblOrder.Edit;
frm.ShowModal;
frm.Free;
end;
procedure TfrmMain.imEditSubClick(Sender: TObject);
var
frm: TfrmPost;
begin
Application.CreateForm(TfrmPost,frm);
frm.Tag:=1;
DM.tblPost.Edit;
frm.ShowModal;
frm.Free;
end;
procedure TfrmMain.pmMainPopup(Sender: TObject);
begin
imAddMain.Visible:=DM.user.Admin=false;
imEditMain.Visible:=(grdMain.DataSource.DataSet.FieldCount>0) and
(DM.user.Admin=false);
imDeleteMain.Visible:=(grdMain.DataSource.DataSet.FieldCount>0) and
(DM.user.Admin=false);
imReport2.Visible:=grdMain.DataSource.DataSet.FieldCount>0
end;
procedure TfrmMain.pmSubPopup(Sender: TObject);
begin
imAddMain.Visible:=(grdMain.DataSource.DataSet.FieldCount>0) and
104
(DM.user.Admin=false);
imEditMain.Visible:=(grdSub.DataSource.DataSet.FieldCount>0) and
(DM.user.Admin=false);
imDeleteMain.Visible:=(grdSub.DataSource.DataSet.FieldCount>0) and
(DM.user.Admin=false);
imPart.Visible:=(grdSub.DataSource.DataSet.FieldCount>0) and
(DM.user.Admin=false);
imReport3.Visible:=grdSub.DataSource.DataSet.FieldCount>0
end;
procedure TfrmMain.imGridClick(Sender: TObject);
var
frm: TfrmGrid;
begin
Application.CreateForm(TfrmGrid,frm);
frm.Tag:=(Sender as TMenuItem).Tag;
frm.ShowModal;
frm.Free;
end;
procedure TfrmMain.imLinkingClick(Sender: TObject);
begin
frmSetLink.ShowModal;
end;
procedure TfrmMain.imReportClick(Sender: TObject);
var
frm: TfrmReport;
begin
Application.CreateForm(TfrmReport,frm);
105
frm.Tag:=(Sender as TMenuItem).Tag;
frm.ShowModal;
frm.Free;
end;
end.

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)