update,
This commit is contained in:
BIN
kary_lai/task2/plan/a7xmpQncHg.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/a7xmpQncHg.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
kary_lai/task2/plan/add_to_stock.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/add_to_stock.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
kary_lai/task2/plan/ask.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/ask.png
(Stored with Git LFS)
Normal file
Binary file not shown.
3
kary_lai/task2/plan/convert.sh
Executable file
3
kary_lai/task2/plan/convert.sh
Executable file
@@ -0,0 +1,3 @@
|
||||
npm install -g mdimg
|
||||
|
||||
mdimg -i draft_2024_11_08.md -o draft_2024_11_08.png -w 600 --css github
|
BIN
kary_lai/task2/plan/decount_in_another_list.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/decount_in_another_list.png
(Stored with Git LFS)
Normal file
Binary file not shown.
62
kary_lai/task2/plan/draft.html
Normal file
62
kary_lai/task2/plan/draft.html
Normal file
File diff suppressed because one or more lines are too long
104
kary_lai/task2/plan/draft.md
Normal file
104
kary_lai/task2/plan/draft.md
Normal file
@@ -0,0 +1,104 @@
|
||||
## 你有兩種賣嘅方式:
|
||||
|
||||
第一種就係你入貨,然之後擺喺你度你再買出去
|
||||
第二種就係你 post 一個 item,然之後集集埋埋啲客人要幾多件你再買貨
|
||||
|
||||
## 第一個賣法
|
||||
|
||||
咁我對住第一個問題
|
||||
我會建議好似下面果幾張圖做法
|
||||
總括嚟講即係話你入咗一個貨物嘅總數,你每買一件佢就喺個表度扣一件,扣到一個數目以下佢就開始會有個警告畀返你(或者唔比你出單,待定...)
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
## 第二種賣法
|
||||
|
||||

|
||||
|
||||
> 我可唔可以整多頁係 訂貨
|
||||
> 因為我平時係比依個 list 供應商拎貨
|
||||
> 我可唔可以整多頁係訂貨 list
|
||||
> 之後可係依度自動計番個數量
|
||||
|
||||
咁第二種賣法,我諗我會咁建議
|
||||
我另外開多一個新嘅欄,佢係會幫你計數咁樣計上去
|
||||
|
||||
就好似咁
|
||||
|
||||

|
||||
|
||||
咁最後就可以集集埋埋個數目同埋要買嘅物品向供應商攞貨.
|
||||
|
||||
OK ?
|
||||
|
||||
## VO
|
||||
|
||||
### 1. 訂貨單加 item
|
||||

|
||||
|
||||
加入貨掣,
|
||||
按下去貨物數量會加番相對應 list 相對應 quantity
|
||||
|
||||
- Q: 如果搵唔到 item 我就 skip
|
||||
|
||||
---
|
||||
|
||||
### 2. 係 "庫存計算" 度加 column
|
||||

|
||||
特點同 simba stock list 差唔多
|
||||
記得 show 個 excel 表新 column
|
||||
|
||||
1. "庫存計算"
|
||||
2. 加數量 column
|
||||
3. 加 alert column
|
||||
4. 加 counter column
|
||||
|
||||
邏輯呢同原先嗰個表相似嘅
|
||||
|
||||
## 出單扣數嘅流程
|
||||
即係話個用戶會喺個excel表度撳 copy image 嗰個掣
|
||||
|
||||
- 如果嗰件貨物係有實貨喺度的話
|
||||
- (即係數量唔係presell而係一個數目字)
|
||||
- 咁佢就會睇一睇數目夠唔夠
|
||||
- 佢會收返喺最左手邊嗰個欄目果度
|
||||
- 如果夠的話?
|
||||
- 佢就會畀你出單(即係copy image) -> 好似以前咁話畀你聽個image copy咗
|
||||
- 如果唔夠的話?
|
||||
- 佢就會佢就會擋住你 -> 會有條yes no question問你係咪依舊繼續要copy image
|
||||
|
||||
- 如果係presell
|
||||
- 咁佢就會無事數量嗰一個column
|
||||
- 直接喺後面counter嗰度加個數目上去
|
||||
|
||||
呢一個係一個出單扣數嘅流程
|
||||
|
||||
|
||||
## 入貨流程
|
||||
|
||||
用戶喺入貨表嗰度揀咗相對應貨物
|
||||
用戶再喺入貨表嗰度揀返相對應數量
|
||||
然後用戶會撳入貨嗰粒掣
|
||||
|
||||
咁個 script 會
|
||||
|
||||
喺庫存計算, 同埋 simba 入數表度去搵番相對應嗰件貨物出嚟
|
||||
|
||||
搵到就加落去, 兩個表都搵唔到呢就skip咗佢
|
||||
|
||||
---
|
||||
|
||||
## ??? 要攪清楚
|
||||
|
||||

|
||||

|
||||
|
||||
> 想問埋 我加貨果到 我因為訂左 但未到我手 ~ 即係暫時未係現貨 未到 我可唔可以加到欄係 邊張單到左貨 禁個制 之後就會加到我宜家係手既貨到?
|
||||
>
|
||||
> 例如
|
||||
> 我賣奶樽 個奶樽得2 個
|
||||
> 我就要補貨 訂多2 個
|
||||
> 個庫存+ 2 = total 4
|
||||
> 但我怕係+ 左變左4 時 ( 其實果個補貨係未到我手 我以為自己已經有4 個再去左當現貨賣)
|
104
kary_lai/task2/plan/draft1.md
Normal file
104
kary_lai/task2/plan/draft1.md
Normal file
@@ -0,0 +1,104 @@
|
||||
## 你有兩種賣嘅方式:
|
||||
|
||||
第一種就係你入貨,然之後擺喺你度你再買出去
|
||||
第二種就係你 post 一個 item,然之後集集埋埋啲客人要幾多件你再買貨
|
||||
|
||||
## 第一個賣法
|
||||
|
||||
咁我對住第一個問題
|
||||
我會建議好似下面果幾張圖做法
|
||||
總括嚟講即係話你入咗一個貨物嘅總數,你每買一件佢就喺個表度扣一件,扣到一個數目以下佢就開始會有個警告畀返你(或者唔比你出單,待定...)
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
## 第二種賣法
|
||||
|
||||

|
||||
|
||||
> 我可唔可以整多頁係 訂貨
|
||||
> 因為我平時係比依個 list 供應商拎貨
|
||||
> 我可唔可以整多頁係訂貨 list
|
||||
> 之後可係依度自動計番個數量
|
||||
|
||||
咁第二種賣法,我諗我會咁建議
|
||||
我另外開多一個新嘅欄,佢係會幫你計數咁樣計上去
|
||||
|
||||
就好似咁
|
||||
|
||||

|
||||
|
||||
咁最後就可以集集埋埋個數目同埋要買嘅物品向供應商攞貨.
|
||||
|
||||
OK ?
|
||||
|
||||
## VO
|
||||
|
||||
### 1. 訂貨單加 item
|
||||

|
||||
|
||||
加入貨掣,
|
||||
按下去貨物數量會加番相對應 list 相對應 quantity
|
||||
|
||||
- Q: 如果搵唔到 item 我就 skip
|
||||
|
||||
---
|
||||
|
||||
### 2. 係 "庫存計算" 度加 column
|
||||

|
||||
特點同 simba stock list 差唔多
|
||||
記得 show 個 excel 表新 column
|
||||
|
||||
1. "庫存計算"
|
||||
2. 加數量 column
|
||||
3. 加 alert column
|
||||
4. 加 counter column
|
||||
|
||||
邏輯呢同原先嗰個表相似嘅
|
||||
|
||||
## 出單扣數嘅流程
|
||||
即係話個用戶會喺個excel表度撳 copy image 嗰個掣
|
||||
|
||||
- 如果嗰件貨物係有實貨喺度的話
|
||||
- (即係數量唔係presell而係一個數目字)
|
||||
- 咁佢就會睇一睇數目夠唔夠
|
||||
- 佢會收返喺最左手邊嗰個欄目果度
|
||||
- 如果夠的話?
|
||||
- 佢就會畀你出單(即係copy image) -> 好似以前咁話畀你聽個image copy咗
|
||||
- 如果唔夠的話?
|
||||
- 佢就會佢就會擋住你 -> 會有條yes no question問你係咪依舊繼續要copy image
|
||||
|
||||
- 如果係presell
|
||||
- 咁佢就會無事數量嗰一個column
|
||||
- 直接喺後面counter嗰度加個數目上去
|
||||
|
||||
呢一個係一個出單扣數嘅流程
|
||||
|
||||
|
||||
## 入貨流程
|
||||
|
||||
用戶喺入貨表嗰度揀咗相對應貨物
|
||||
用戶再喺入貨表嗰度揀返相對應數量
|
||||
然後用戶會撳入貨嗰粒掣
|
||||
|
||||
咁個 script 會
|
||||
|
||||
喺庫存計算, 同埋 simba 入數表度去搵番相對應嗰件貨物出嚟
|
||||
|
||||
搵到就加落去, 兩個表都搵唔到呢就skip咗佢
|
||||
|
||||
---
|
||||
|
||||
## ??? 要攪清楚
|
||||
|
||||

|
||||

|
||||
|
||||
> 想問埋 我加貨果到 我因為訂左 但未到我手 ~ 即係暫時未係現貨 未到 我可唔可以加到欄係 邊張單到左貨 禁個制 之後就會加到我宜家係手既貨到?
|
||||
>
|
||||
> 例如
|
||||
> 我賣奶樽 個奶樽得2 個
|
||||
> 我就要補貨 訂多2 個
|
||||
> 個庫存+ 2 = total 4
|
||||
> 但我怕係+ 左變左4 時 ( 其實果個補貨係未到我手 我以為自己已經有4 個再去左當現貨賣)
|
133
kary_lai/task2/plan/draft_2024_11_08.md
Normal file
133
kary_lai/task2/plan/draft_2024_11_08.md
Normal file
@@ -0,0 +1,133 @@
|
||||
六粒掣,
|
||||
|
||||
重設
|
||||
查詢
|
||||
儲存
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
\\wsl.localhost\Ubuntu\home\logic\_wsl_workspace\comission-playlist\kary_lai\task2\from_client\2024_11_06\20241103.xlsm
|
||||
|
||||
## 1. 賣貨 (已有貨物 / 預售貨物) 改乜?
|
||||
|
||||
- 概念已清 (skip)
|
||||

|
||||

|
||||
|
||||
|
||||
- 概念要夾
|
||||

|
||||
|
||||
---
|
||||
|
||||
1. copy image功能不變
|
||||
2. 如果item數量唔夠就會蘇紅色
|
||||
1. (顯示番虧空數量)
|
||||
3. 如果item數量足夠就會蘇綠色
|
||||
1. (顯示番數量)
|
||||
4. 如果本身item喺張表度mark咗做presell就會show黃色
|
||||
5. 如果個list嗰度有其中一個item數量唔足夠就會出呢個 msgbox, "Yes" 的話,如果本身item數量足夠就會照扣,item數量唔夠的話就會skip
|
||||
6. 有一個位可以cancel
|
||||
|
||||
|
||||
### 出單扣數嘅流程
|
||||
即係話個用戶會喺個excel表度撳 copy image 嗰個掣
|
||||
|
||||
- 如果嗰件貨物係有實貨喺度的話
|
||||
- (即係數量唔係presell而係一個數目字)
|
||||
- 咁佢就會睇一睇數目夠唔夠
|
||||
- 佢會 show 返喺最左手邊嗰個欄目果度
|
||||
- 如果夠的話?
|
||||
- 佢就會畀你出單(即係copy image) -> 好似以前咁話畀你聽個image copy咗
|
||||
- 如果唔夠的話?
|
||||
- 佢就會佢就會擋住你 -> 會有條yes no question問你係咪依舊繼續要copy image
|
||||
|
||||
- 如果係 presell
|
||||
- 咁佢就會 "無視" 數量嗰一個column
|
||||
- 直接喺後面counter嗰度加個數目上去
|
||||
|
||||
喱一個係一個出單扣數嘅流程
|
||||
|
||||
---
|
||||
|
||||
## 2. 訂貨表改乜 ?
|
||||
|
||||
### 1. 訂貨單加 item
|
||||
|
||||

|
||||
|
||||
加入貨掣,撳落去貨物數量會加番相對應 list 相對應 quantity
|
||||
|
||||
- 如果搵到 item 名就加
|
||||
- 如果搵唔到 item 名就 skip
|
||||
- 加 copy 掣
|
||||
|
||||
### 訂貨資料庫
|
||||
|
||||
每次加張單都會放返喺個資料庫入面
|
||||
|
||||
1. 跟番單號
|
||||
2. item 名
|
||||
3. 數量
|
||||
4. 價格
|
||||
5. 日期
|
||||
6. 備註
|
||||
7. 出貨狀態
|
||||
|
||||
|
||||

|
||||
|
||||
### 入貨流程
|
||||
|
||||
#### 用戶
|
||||
1. 用戶喺入貨表嗰度揀咗相對應貨物
|
||||
1. 用戶再喺入貨表嗰度揀返相對應數量
|
||||
1. 然後用戶會撳入貨嗰粒掣
|
||||
|
||||
#### 咁個 script 就會
|
||||
|
||||
1. 喺庫存計算, 同埋 simba 入數表度去搵番相對應嗰件貨物出嚟
|
||||
1. 搵到就加落去, 兩個表都搵唔到呢就skip咗佢
|
||||
|
||||
---
|
||||
|
||||
### 2. 係 "庫存計算" 度加 column
|
||||
|
||||
變左做商品果張 excel 表度做
|
||||
|
||||

|
||||

|
||||
特點同 simba stock list 差唔多
|
||||
記得 show 個 excel 表新 column 比人睇
|
||||
|
||||
1. "庫存計算"
|
||||
2. 加數量 column
|
||||
3. 加 alert column
|
||||
4. 加 counter column
|
||||
|
||||
如果:
|
||||
1. 數量係一個數字就係當已有貨物, 會喺數量度扣
|
||||
1. 數量係 "presell" 就當係預售貨物, 會喺 COUNTER 度加
|
||||
|
||||
邏輯呢同原先嗰個表 (SIMBA入庫表) 相似嘅
|
||||
|
||||
---
|
||||
|
||||
## 3. 要攪清楚 ???
|
||||
|
||||

|
||||

|
||||
|
||||
> 想問埋 我加貨果到 我因為訂左 但未到我手 ~ 即係暫時未係現貨 未到 我可唔可以加到欄係 邊張單到左貨 禁個制 之後就會加到我宜家係手既貨到?
|
||||
|
||||
|
||||
> 例如
|
||||
> 我賣奶樽 個奶樽得2 個
|
||||
> 我就要補貨 訂多2 個
|
||||
> 個庫存+ 2 = total 4
|
||||
> 但我怕係+ 左變左4 時 ( 其實果個補貨係未到我手 我以為自己已經有4 個再去左當現貨賣)
|
||||
|
||||
倉嘅數目可以比負數,負數代表賣左但係個倉係虧空
|
BIN
kary_lai/task2/plan/draft_2024_11_08.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/draft_2024_11_08.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
kary_lai/task2/plan/images/3PljUoKlOM.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/images/3PljUoKlOM.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
kary_lai/task2/plan/images/QaSSOTNGwX.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/images/QaSSOTNGwX.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
kary_lai/task2/plan/images/fbWSkywn2O.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/images/fbWSkywn2O.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
kary_lai/task2/plan/images/h8CpTUCyTb.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/images/h8CpTUCyTb.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
kary_lai/task2/plan/images/j2Zm8jibqk.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/images/j2Zm8jibqk.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
kary_lai/task2/plan/images/n4kGIMRhUM.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/images/n4kGIMRhUM.png
(Stored with Git LFS)
Normal file
Binary file not shown.
95
kary_lai/task2/plan/original.module
Normal file
95
kary_lai/task2/plan/original.module
Normal file
@@ -0,0 +1,95 @@
|
||||
|
||||
|
||||
Sub «³]ªí®æ()
|
||||
|
||||
Dim ¥Ø«e½s¸¹ As Integer
|
||||
|
||||
Sheets("q³æ").Range("D5,D10:E16").ClearContents
|
||||
|
||||
¥Ø«e½s¸¹ = Sheets("¸ê®Æ®w").Range("A1").CurrentRegion.End(xlDown).Value
|
||||
|
||||
Sheets("q³æ").Range("G6").Value = ¥Ø«e½s¸¹ + 1
|
||||
Sheets("q³æ").Range("G7").Value = Date
|
||||
|
||||
End Sub
|
||||
|
||||
Sub Àx¦sq³æ()
|
||||
|
||||
Dim «~¶µ¼Æ¶q As Integer, ªÅ¥Õ¦C As Integer
|
||||
|
||||
«~¶µ¼Æ¶q = WorksheetFunction.CountA(Sheets("q³æ").Range("D10:D16"))
|
||||
ªÅ¥Õ¦C = Sheets("¸ê®Æ®w").Range("A1").CurrentRegion.End(xlDown).Offset(1, 0).Row
|
||||
|
||||
Sheets("q³æ").Range("D10:G10").Resize(«~¶µ¼Æ¶q).Copy
|
||||
Sheets("¸ê®Æ®w").Range("D" & ªÅ¥Õ¦C).PasteSpecial xlPasteValues
|
||||
|
||||
Sheets("¸ê®Æ®w").Range("A" & ªÅ¥Õ¦C).Resize(«~¶µ¼Æ¶q).Value = Sheets("q³æ").Range("G6").Value
|
||||
Sheets("¸ê®Æ®w").Range("B" & ªÅ¥Õ¦C).Resize(«~¶µ¼Æ¶q).Value = Sheets("q³æ").Range("G7").Value
|
||||
Sheets("¸ê®Æ®w").Range("C" & ªÅ¥Õ¦C).Resize(«~¶µ¼Æ¶q).Value = Sheets("q³æ").Range("D5").Value
|
||||
|
||||
Call «³]ªí®æ
|
||||
MsgBox "¸ê®ÆÀx¦s§¹²¦"
|
||||
|
||||
End Sub
|
||||
|
||||
Sub ¬d¸ßq³æ()
|
||||
|
||||
Dim q³æ½s¸¹ As Integer, q³æ¦ì¸m As Integer, «~¶µ¼Æ¶q As Integer
|
||||
|
||||
q³æ½s¸¹ = Sheets("q³æ").Range("G6").Value
|
||||
«~¶µ¼Æ¶q = WorksheetFunction.CountIf(Sheets("¸ê®Æ®w").Range("A:A"), q³æ½s¸¹)
|
||||
|
||||
Sheets("q³æ").Range("D5, D10:E16").ClearContents
|
||||
|
||||
If «~¶µ¼Æ¶q = 0 Then
|
||||
MsgBox "¬dµL¦¹q³æ"
|
||||
Exit Sub
|
||||
Else
|
||||
q³æ¦ì¸m = WorksheetFunction.Match(q³æ½s¸¹, Sheets("¸ê®Æ®w").Range("A:A"), 0)
|
||||
Sheets("¸ê®Æ®w").Range("D" & q³æ¦ì¸m).Resize(«~¶µ¼Æ¶q, 2).Copy
|
||||
Sheets("q³æ").Range("D10").PasteSpecial xlPasteValues
|
||||
|
||||
Sheets("q³æ").Range("G7").Value = Sheets("¸ê®Æ®w").Range("B" & q³æ¦ì¸m).Value
|
||||
Sheets("q³æ").Range("D5").Value = Sheets("¸ê®Æ®w").Range("C" & q³æ¦ì¸m).Value
|
||||
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Sub ¦C¦Lq³æ()
|
||||
|
||||
Dim ÀɦW As String
|
||||
ÀɦW = Format(Range("G6").Value, "00000")
|
||||
|
||||
Sheets("q³æ").ExportAsFixedFormat _
|
||||
Type:=xlTypePDF, _
|
||||
Filename:="\\Mac\Home\Downloads\" & ÀɦW, _
|
||||
IgnorePrintAreas:=False
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
BIN
kary_lai/task2/plan/pic1.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/pic1.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
kary_lai/task2/plan/pic2.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/pic2.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
kary_lai/task2/plan/pic3.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/pic3.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
kary_lai/task2/plan/pic4.png
(Stored with Git LFS)
Normal file
BIN
kary_lai/task2/plan/pic4.png
(Stored with Git LFS)
Normal file
Binary file not shown.
Reference in New Issue
Block a user