Losses
ロス情報:ロス
Select
本製品 は Smaregi API を使用して、WHERE 句条件と選択されたカラムを処理します。LIKE(date およびdateTime データ型のカラムの場合)およびIN 演算子は、クライアント側で処理されます。
=、!=、<>、>、<、>=、<=、AND、LIKE、ORDER BY 演算子は、サーバー側で処理されます。
例えば、次のクエリはサーバー側で処理されます。
SELECT Division FROM Losses ORDER BY LossId DESC SELECT * FROM Losses WHERE LossId != 5
Insert
Loss を追加するには、StoreId、Division、Memo、IdentificationNo、Token、LossDatetime およびDetailAggregate を指定します。
テンポラリテーブルの使用
INSERT INTO LossDetails#TEMP (productCode, color, productId, size, quantity) VALUES (4, 'White', 6, 'S', 2) INSERT INTO Losses (StoreId, Division, Memo, IdentificationNo, Token, LossDatetime, DetailAggregate) VALUES (1, '01', 'Memo', 'loss32', '764956r6f694344r3r332465', '2020-01-17 02:05:45', 'LossDetails#TEMP')
集計の使用
INSERT INTO Losses (StoreId, Division, Memo, IdentificationNo, LossDatetime, DetailAggregate) VALUES (1, '02', 'Memo', 'loss32', '2020-01-17 02:05:45', ' {
"table_name": "LossDetail",
"rows": [
{
"productCode": "2000001000045",
"color": "White",
"productId": "4",
"size": "S",
"quantity": "2",
}
]
}
')
Upsert
アップサートは、このテーブルではサポートされていません。
Update
スマレジはDivision、Memo、LossDatetime、IdentificationNo、Token およびDetailAggregate カラムのUPDATE を許容します。
UPDATE Losses SET Memo = 'UpdatedMemo5', Division = '02' WHERE LossId = 1DetailAggregate カラムのUPDATE クエリの変更は、LossDetails ビューに反映されます。
テンポラリテーブルの使用
INSERT INTO LossDetails#TEMP (LossId, productCode, color, productId, size, quantity) VALUES (21, 6, 'White', 5, 'S', 2) INSERT INTO LossDetails#TEMP (LossId, productCode, color, productId, size, quantity) VALUES (21, 5, 'White', 7, 'S', 2) UPDATE Losses SET DetailAggregate = 'LossDetails#TEMP' WHERE LossId = 21
集計の使用
UPDATE Losses set DetailAggregate = ' {
"table_name": "LossDetail",
"rows": [
{
"lossId": "21",
"productCode": "2000001000045",
"color": "White",
"productId": "9",
"size": "S",
"quantity": "2",
}
]
}
' WHERE LossId = 21
Delete
Losses は、ProductId を指定することで削除できます。
DELETE FROM Losses WHERE LossId = 12
Bulk Delete
INSERT INTO Losses#TEMP (LossId) VALUES (11) INSERT INTO Losses#TEMP (LossId) VALUES (12) INSERT INTO Losses#TEMP (LossId) VALUES (13) INSERT INTO Losses#TEMP (LossId) VALUES (22) DELETE FROM Losses WHERE EXISTS SELECT LossId FROM Losses#TEMP
Columns
| Name | Type | ReadOnly | References | Description |
| LossId [KEY] | Integer | False |
ロスID (PK) : ロス毎に付与するID。【自動更新】自動採番登録時不要。更新、削除必須。 | |
| StoreId | Integer | True |
Stores.StoreId |
店舗ID : 数字9桁以内。変更不可のため、更新時に登録内容と異なる日時が指定するとエラー。 |
| Division | String | False |
ロス区分 : ロス区分を設定。01:廃棄、02:盗難、99:その他 | |
| Memo | String | False |
メモ : 1000文字以内。ロス理由などを設定。 | |
| LossDatetime | Datetime | False |
ロス発生日時 : ロスの発生日時を設定。(YYYY-MM-DD HH:MM:SS形式)登録時必須。変更不可のため、更新時に登録内容と異なる日時が指定するとエラー。 | |
| IdentificationNo | String | False |
識別番号 : ロス情報を管理するための任意の文字列を設定出来る項目。 | |
| Modified | Datetime | True |
更新日時 : ロスの更新日時。 (YYYY-MM-DD HH:MM:SS形式) | |
| Token | String | False |
トークン : リクエストを一意に識別するためのトークン文字列を設定。重複するトークン文字列が指定された場合、スルーします。設定例:リクエスト日時(YYYYMMDDHHMMSS)+2桁の連番 | |
| DetailAggregate | String | False |
A JSON aggregate of details associated with the loss. |