Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
ID - идентификатор записи таблицы, первичный ключ
Goods_id - идентификатор товара. Party_id - идентификатор партии товара. Quantity - количество. Price - стоимость единицы товаров. Сущность «Закупленный товар» служит для учёта состава проданной партии товара. Сущность связана с сущностями «Товар» и «Закупленная партия товара». Атрибуты сущности «Закупленный товар»: ID - идентификатор записи таблицы, первичный ключ Goods_id - идентификатор товара. Party_id - идентификатор партии товара. Quantity - количество. Price - стоимость единицы товаров. Сущность «Склад» служит для хранения данных склада. Сущность не связана с прочими сущностями, но необходима при формировании выходных документов. Атрибуты сущности «Склад»: Name - Наименование склада. Address - Адрес склада. INN - ИНН склада. KPP - КПП склада. Phone - Телефон склада. Account - Расчетный счёт склада. Bank - Банк склада. Address_bank - Адрес банка склада. BIK - БИК банка склада. OKPO - ОКПО склада. Corr_account - Корреспондентский счёт. Director - Руководитель. Chief_accountant - Главный бухгалтер склада. Рис. 4.3.1. Диаграмма «Сущность - связь»
Создание базы данных и таблиц CREATE DATABASE warehouse; USE warehouse; CREATE TABLE supplier ( supplier_id INTEGER PRIMARY KEY NOT NULL IDENTITY(1,1), supplier_name VARCHAR(100), supplier_address VARCHAR(255), supplier_account VARCHAR(25), supplier_inn INTEGER, suppier_kpp INTEGER, supplier_phone VARCHAR (20), supplier_bank VARCHAR (255), address_bank VARCHAR(255), supplier_bik INTEGER, cor_account VARCHAR(25), okpo INTEGER, director VARCHAR(255), chief_accountant VARCHAR(255) );
CREATE TABLE customer ( customer_id INTEGER PRIMARY KEY NOT NULL IDENTITY(1,1), customer_name VARCHAR(100), customer_address VARCHAR(255), customer_account VARCHAR(25), customer_inn INTEGER, suppier_kpp INTEGER, customer_phone VARCHAR (20), customer_bank VARCHAR (255), address_bank VARCHAR (255), customer_bik INTEGER, cor_account VARCHAR(25), okpo INTEGER, director VARCHAR(255), chief_accountant VARCHAR(255) ); CREATE TABLE goods ( goods_id INTEGER PRIMARY KEY IDENTITY(1,1), goods_name VARCHAR(100), price MONEY, manufacturer VARCHAR(300), quantity INTEGER, unit VARCHAR (50), massa INTEGER ); CREATE TABLE party_delivered ( party_id INTEGER PRIMARY KEY IDENTITY(1,1), _date DATETIME, supplier_id INTEGER, price MONEY ); CREATE TABLE party_sold ( party_id INTEGER PRIMARY KEY IDENTITY(1,1), _date DATETIME, customer_id INTEGER, price MONEY, seria VARCHAR(10) ); CREATE TABLE sent_goods ( ID INTEGER PRIMARY KEY IDENTITY(1,1), goods_id INTEGER, party_id INTEGER, quantity INTEGER, price MONEY ); CREATE TABLE delivered_goods ( ID INTEGER PRIMARY KEY IDENTITY(1,1), goods_id INTEGER, party_id INTEGER, quantity INTEGER, price MONEY ); CREATE TABLE warehouse_data ( name VARCHAR(100), address VARCHAR(255), inn INTEGER,
kpp INTEGER, phone VARCHAR(20), account VARCHAR(25), bank VARCHAR(255), address_bank VARCHAR(255), bik INTEGER, okpo INTEGER, cor_account VARCHAR(25), director VARCHAR(255), Chief_accountant VARCHAR(255) ); Заполнение таблиц INSERT INTO supplier VALUES ( ‘Поставщик №1’, ‘г. Астрахань, ул Третья, д 47’, ‘45654233334789d48’, ‘456789123’, ‘159987456’, ‘(8512) 12-58-95’, ‘Первый строительный’, ‘г Астрахань, ул Бабушкина, д 57’, ‘465466545’, ‘45965456854sd987g89’, ‘15987456’, ‘Романов Н.Г.’, ‘Рыбнкова Г.П’ ); INSERT INTO customer VALUES ( ‘Покупатель № 1’, ‘г. Нижневартовск, ул Седьмая, д 14’, ‘45654233334789d48’, ‘456789123’, ‘159987456’, ‘(8512) 12-58-95’, ‘Банк Москвы’, ‘г Москва, ул Степашина, д 57’, ‘465466545’, ‘45965456854sd987g89’, ‘15987456’, ‘Смирнов К.С.’, ‘Иванова Г.П’ ); INSERT INTO goods VALUES ( ‘Товар 1’, ‘521.50’, ‘Производитель 1’, ‘5000’, ‘ящик’, ’20’ ); INSERT INTO party_delivered VALUES ( ’13.03.2009 15:35:01’, ‘1’, ‘456.25’ ); INSERT INTO party_delivered VALUES ( ’14.03.2009 12:00:41’, ‘1’, ‘456.25’ ); INSERT INTO sent_goods VALUES ( ‘1’, ‘4’, ‘998’, ‘500’ ); INSERT INTO delivered_goods VALUES ( ‘1’, ‘4’, ‘365’, ‘456.25’ ); INSERT INTO warehouse_data VALUES ( ‘Центральный Астраханский склад торговой сети «Мастер+»’, ‘г. Астрахань, ул Перевозная, строение 77’, ‘15123456798’, ‘123456789’, ‘8512 65-98-41’, ‘d4fgd6g4fs5g65456’, ‘Первый строительный банк’, ‘г Астрахань, ул Лесная, Д 45’, ‘546542364556’, ‘12345678’, ‘fds4f56df4s5gf646’, ‘Степанов Н. К’, ‘Гиреева С.Т.’ ); Тексты запросов SQL
SQL запросы используемые при оформлении приходной накладной: /*Получение реквизитов склада */ SELECT * FROM warehouse_data; /*Выборка данных о товарах, прибывших в составе партии товара*/ SELECT goods.goods_name, goods.unit, delivered_goods.price, delivered_goods.quantity, (delivered_goods.quantity*delivered_goods.price) FROM goods, delivered_goods WHERE (delivered_goods.party_id=' 1') AND (delivered_goods.goods_id = goods.goods_id); В запросе происходит выборка количества и стоимости товаров, из таблицы «закупленные товары» (delivered_goods) для всех записей, где поле party_id равно идентификатору пришедшей партии (в примере номер партии товара равен 1); к тому же для каждой записи происходит выборка наименований товаров и единицы их измерения из таблицы «товары» (goods). Выражение (delivered_goods.quantity * delivered_goods.price) вычисляет сумму для каждого товара. SQL запросы используемые при оформлении товарно-транспортной накладной: /*Получение реквизитов склада */
SELECT * FROM warehouse_data; /*Выборка данных о товарах, вошедших в состав проданной партии товара*/ SELECT goods.goods_name, goods.unit, sent_goods.price, sent_goods.quantity, (sent_goods.quantity*sent_goods.price) FROM goods, sent_goods WHERE (sent_goods.party_id=' 1') AND (sent_goods.goods_id = goods.goods_id); Здесь происходит выборка данных о товаре, вошедшем в проданную партию, аналогично запросу выборки данных о товарах, прибывших в составе партии товара, описанному выше. /*Получение реквизитов покупателя*/ SELECT customer.customer_name, customer.customer_address, customer.customer_account, customer.customer_INN, customer.customer_kpp, customer.customer_phone, customer.customer_bank, customer.customer_address_bank, customer.customer_bik, customer.cor_account, customer.okpo, customer.mainbuh, customer.director, party_sold.customer_id FROM customer, party_sold WHERE (party_sold.customer_id = customer.customer_id) AND (party_sold.party_id =126); Здесь происходит выборка реквизитов покупателя партии товара. /*Получение количества и стоимости товара с идентификатором 3, прибывшего на склад после 22.03.2009 (подобные запросы используются при построении отчёта)*/ SELECT sum(delivered_goods.quantity * delivered_goods.price),sum(delivered_goods.quantity)FROM delivered_goods, party_delivered WHERE(delivered_goods.party_id =party_delivered.party_id)AND(datepart(day,party_delivered._date) > 22) AND(datepart(month, party_delivered._date)>= 3) AND(datepart(year, party_delivered._date) = 2009) AND (delivered_goods.goods_id = 3); Клиентская часть
|
||||||
Последнее изменение этой страницы: 2020-03-14; просмотров: 184; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.143.23.176 (0.017 с.) |