Добавить элементы в таблицу «Операции с продажами» как одну транзакцию - PullRequest
0 голосов
/ 22 января 2019

У меня есть таблицы Items table as (Stock) и Sales Transaction, поэтому, когда я хочу продавать товары из Items table Sales Transaction, будет сгенерировано id (автоинкремент) и все элементы будут добавленыпользователь к продаже.
Но здесь проблема в том, как одна транзакция id может иметь несколько элементов подряд или как
Sales Transaction может генерировать одинаковые id для каждой строки?

Таким образом, даже если я вставлю элементы в Sales Transaction, для каждого элемента будет различаться id, поэтому я не смогу правильно искать отчеты.
Это повлияет на функциональность.

Я думаю добавить все элементы в одну строку, например:

enter image description here Так есть ли другой способ решить мою проблему?

1 Ответ

0 голосов
/ 22 января 2019

Чтобы добавить столбец, вам нужно изменить текущую таблицу:

ALTER TABLE "Sales Transaction"
ADD COLUMN TransactionNumber INT NOT NULL

Когда вы вставляете в эту таблицу, вам понадобится что-то вроде этого:

DECLARE @TransNumber INT = (SELECT CASE WHEN MAX(TransactionNumber) IS NULL THEN 1 ELSE MAX(TransactionNumber) + 1 END FROM "Sales Transaction")

INSERT INTO "Sales Transaction" ("Item Name", Qty., Price, "Cust. Name", Tax, Discount, Total, TransactionNumber) 
VALUES
('Pen',1,10,'John Smith',0,0,10,@TransNumber),
('Pencil',2,7,'John Smith',0,0,14.00,@TransNumber)

ПосколькуTransactionNumber будет одинаковым для обеих строк, вы можете искать по нему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...