1] 신규 아이템 추가시 프로그램 수정 없이 처리할 수 있도록 로직 수정
2] 버전 2.0.0 업데이트
This commit is contained in:
parent
a3a9c4a400
commit
c01a048faf
730
frmMySqlTest.vb
730
frmMySqlTest.vb
@ -1,53 +1,14 @@
|
||||
'Imports System.Data.OleDb
|
||||
'Imports System.Reflection
|
||||
Imports System.ComponentModel
|
||||
Imports System.ComponentModel
|
||||
Imports System.IO.Ports
|
||||
Imports Microsoft.Office.Core
|
||||
Imports Excel = Microsoft.Office.Interop.Excel
|
||||
''Imports Microsoft.Office.Interop
|
||||
Public Class frmMySqlTest
|
||||
|
||||
Private Enum typeList
|
||||
prodset_V1
|
||||
prodface_V2
|
||||
prodeye
|
||||
prodbody
|
||||
'신규제품추가 : 제품 시리얼 번호 두번째 자리와 동일하도록 업데이트
|
||||
End Enum
|
||||
|
||||
Private Enum modelList
|
||||
PRO = 1
|
||||
LUX
|
||||
MAXIMUM
|
||||
ALPHA
|
||||
ALTO
|
||||
EFFECT
|
||||
MAXIMUM_ALPHA
|
||||
'신규제품추가 : 제품 시리얼 번호 첫번째 자리와 동일하도록 업데이트
|
||||
End Enum
|
||||
Private Enum data_set
|
||||
Private Enum basic_info
|
||||
'packing info
|
||||
packcode
|
||||
pack_date
|
||||
|
||||
set_serial
|
||||
pro_fa_serial
|
||||
lux_fa_serial
|
||||
pro_ey_serial
|
||||
lux_ey_serial
|
||||
pro_bo_serial
|
||||
lux_bo_serial
|
||||
MAXIMUM_serial
|
||||
Alpha_Serial
|
||||
Alpha_fa_Serial
|
||||
Alpha_ey_Serial
|
||||
Alpha_bo_Serial
|
||||
Alto_Serial
|
||||
Effect_Serial
|
||||
EffectV3_Serial
|
||||
MAXIMUM_ALPHA_Serial
|
||||
'신규제품추가 : 추가하는 품목의 변수 추가
|
||||
pack_note
|
||||
|
||||
'order info
|
||||
ordercode
|
||||
order_name
|
||||
phone
|
||||
@ -55,138 +16,18 @@ Public Class frmMySqlTest
|
||||
invoice
|
||||
order_note
|
||||
End Enum
|
||||
Private data_set_max_index As Integer = [Enum].GetNames(GetType(data_set)).Length - 1
|
||||
Private data_select(data_set_max_index) As String
|
||||
Private basic_info_max_index As Integer = [Enum].GetNames(GetType(basic_info)).Length - 1
|
||||
Private basic_data_select(basic_info_max_index) As String
|
||||
|
||||
Private Enum data_count
|
||||
'product
|
||||
dummy_0
|
||||
set_cnt = 1 ' Pro_Set, Lux_Set
|
||||
dummy_2
|
||||
proface_cnt = 3
|
||||
luxface_cnt
|
||||
proeye_cnt
|
||||
luxeye_cnt
|
||||
probody_cnt
|
||||
luxbody_cnt
|
||||
maximum_cnt
|
||||
alphaSet_cnt
|
||||
alphaFace_cnt
|
||||
alphaEye_cnt
|
||||
alphaBody_cnt
|
||||
alto_cnt
|
||||
effect_cnt
|
||||
effectV3_cnt
|
||||
maximumAlpha_cnt
|
||||
'신규제품추가 : 추가하는 품목의 변수 추가
|
||||
|
||||
'component
|
||||
mask5
|
||||
mask10
|
||||
hairband
|
||||
gel
|
||||
minigel
|
||||
ample
|
||||
cream
|
||||
umb
|
||||
fen
|
||||
charger
|
||||
cable
|
||||
toner
|
||||
problack
|
||||
probeige
|
||||
prored
|
||||
propink
|
||||
maxblack
|
||||
maxapr
|
||||
maxmint
|
||||
maxbeige
|
||||
soothing
|
||||
car0
|
||||
car1
|
||||
car2
|
||||
car3
|
||||
car4
|
||||
car5
|
||||
car6
|
||||
bag
|
||||
cosbag
|
||||
dustbag
|
||||
maxPurple
|
||||
proSnakeBlack
|
||||
kollagen
|
||||
kollagenset
|
||||
kollagen_P
|
||||
kollagenset_P
|
||||
cleansingWater
|
||||
tonerPad
|
||||
maxSaffianoBK
|
||||
hologram1
|
||||
hologram3
|
||||
hologram5
|
||||
caseSaffianoPp
|
||||
maxYellow
|
||||
Kollagen_Pe1
|
||||
Kollagen_Pe3
|
||||
Kollagen_Pe5
|
||||
ATCircleCase
|
||||
APSquareCase
|
||||
maxPeach
|
||||
massageSoothing
|
||||
maxSMint
|
||||
meshpouch
|
||||
firmingAmp
|
||||
hyaluronicAmp
|
||||
nightshot
|
||||
morningshot
|
||||
casemaxwoodi
|
||||
Elicolltoner
|
||||
Elicollamp
|
||||
Elicollcream
|
||||
Elihyaltoner
|
||||
Elihyalamp
|
||||
Elihyalcream
|
||||
Dayshot
|
||||
Beautyshopbag
|
||||
Gummy
|
||||
Stickjelly
|
||||
Newyearbag
|
||||
Emsbelt
|
||||
Beltbag
|
||||
Dayshot2
|
||||
Elixir
|
||||
Elixirpremium
|
||||
Emsbeltcontrollset
|
||||
FabricBag
|
||||
Goldshopbag
|
||||
MorNigshotset
|
||||
CTBox
|
||||
ElesqLiftingToner
|
||||
ElesqLiftingCeam
|
||||
ElesqLiftingECream
|
||||
ElesqLiftingAmp
|
||||
ElesqAquaToner
|
||||
ElesqAquaCeam
|
||||
ElesqAquaECream
|
||||
ElesqAquaAmp
|
||||
car8
|
||||
keyring
|
||||
DoenaLiftingToner
|
||||
DoenaLiftingAmp
|
||||
DoenaLiftingCream
|
||||
FirmingCollagenGel
|
||||
keyringSally
|
||||
beautykitHairband
|
||||
beautykitMirrorS
|
||||
beautykitMirrorL
|
||||
bloomingMoistureGel150
|
||||
firmingCollagenGel150
|
||||
tweedCase
|
||||
bloomingMoistureGel250
|
||||
'신규구성품추가 : 추가하는 품목의 변수 추가
|
||||
End Enum
|
||||
Private data_count_max_index As Integer = [Enum].GetNames(GetType(data_count)).Length - 1
|
||||
Private data_cnt(data_count_max_index) As String
|
||||
Structure item_info
|
||||
Dim item_type As String 'P:Product / C:Component
|
||||
Dim prod_code As String
|
||||
Dim sales_packing_cnt_col_nm As String
|
||||
Dim sales_packing_serial_col_nm As String
|
||||
Dim cnt As String
|
||||
Dim serial As String
|
||||
End Structure
|
||||
Private item_data_list As New ArrayList
|
||||
|
||||
Private cmd As String
|
||||
Private dbcmd As String
|
||||
@ -207,11 +48,15 @@ Public Class frmMySqlTest
|
||||
|
||||
Public InputCnt As Long
|
||||
Public InputCntVal As Integer = 10
|
||||
Public OldSerialNumberLength As Integer = 12
|
||||
Public NewSerialNumberLength As Integer = 16
|
||||
|
||||
Private command_serial As String
|
||||
Private command_count As String
|
||||
Private product_serial_type As String
|
||||
Private all_serial_list As New List(Of String)
|
||||
Private query_product As String
|
||||
Private query_component As String
|
||||
|
||||
Private Sub SetInputCnt()
|
||||
InputCnt = InputCntVal
|
||||
@ -262,32 +107,82 @@ Public Class frmMySqlTest
|
||||
|
||||
End Sub
|
||||
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
||||
|
||||
setItemData()
|
||||
txb_clear()
|
||||
|
||||
' DataGridView를 선택하면 전체 한줄이 선택되게 됩니다.
|
||||
dgv_pack_item.SelectionMode = DataGridViewSelectionMode.FullRowSelect
|
||||
txbPacking.Focus()
|
||||
|
||||
End Sub
|
||||
|
||||
'Private Sub size_est()
|
||||
' Dim width, height As Integer
|
||||
Private Sub setItemData()
|
||||
dbcmd = "SELECT CAST(ProdCode AS CHAR), SalesPackingCntColNm, SalesPackingSerialColNm FROM " & prod_table & " WHERE ProdCode <> 2 GROUP BY ProdCode ORDER BY ProdCode asc;"
|
||||
If DBQueryReader(dbcmd) Then
|
||||
Dim RowCount As Int16 = (sqlDataQuery.Length / 3) - 1
|
||||
Dim dataSetCount As Int32 = 0
|
||||
Dim item_data As item_info
|
||||
|
||||
' Me.Hide()
|
||||
' Me.WindowState = FormWindowState.Maximized
|
||||
For row = 0 To RowCount
|
||||
item_data.item_type = "P"
|
||||
For col = 0 To 2
|
||||
If col = 0 Then
|
||||
item_data.prod_code = sqlDataQuery(dataSetCount)
|
||||
ElseIf col = 1 Then
|
||||
item_data.sales_packing_cnt_col_nm = sqlDataQuery(dataSetCount)
|
||||
ElseIf col = 2 Then
|
||||
item_data.sales_packing_serial_col_nm = sqlDataQuery(dataSetCount)
|
||||
End If
|
||||
dataSetCount += 1
|
||||
Next
|
||||
item_data_list.Add(item_data)
|
||||
Next
|
||||
End If
|
||||
|
||||
' width = Val(Me.Width)
|
||||
' height = Val(Me.Height)
|
||||
dbcmd = "SELECT CAST(ProdCode AS CHAR), SalesPackingCntColNm FROM " & component_table & " GROUP BY ProdCode ORDER BY ProdCode asc;"
|
||||
If DBQueryReader(dbcmd) Then
|
||||
Dim RowCount As Int16 = (sqlDataQuery.Length / 2) - 1
|
||||
Dim dataSetCount As Int32 = 0
|
||||
Dim item_data As item_info
|
||||
|
||||
' Me.MaximumSize = New Size(width, height)
|
||||
' Me.Width = width
|
||||
' Me.Height = height
|
||||
For row = 0 To RowCount
|
||||
item_data.item_type = "C"
|
||||
For col = 0 To 1
|
||||
If col = 0 Then
|
||||
item_data.prod_code = sqlDataQuery(dataSetCount)
|
||||
ElseIf col = 1 Then
|
||||
item_data.sales_packing_cnt_col_nm = sqlDataQuery(dataSetCount)
|
||||
End If
|
||||
dataSetCount += 1
|
||||
Next
|
||||
item_data_list.Add(item_data)
|
||||
Next
|
||||
End If
|
||||
|
||||
' Me.Show()
|
||||
' Me.Refresh()
|
||||
'제품 정보 조회 쿼리 생성
|
||||
query_product = Nothing
|
||||
For Each item_data As item_info In item_data_list
|
||||
If item_data.item_type = "P" Then
|
||||
If query_product = Nothing Then
|
||||
query_product = "'" & item_data.prod_code & "', IFNULL(" & item_data.sales_packing_serial_col_nm & ",'NULL'), IFNULL(" & item_data.sales_packing_cnt_col_nm & ",'0')"
|
||||
Else
|
||||
query_product = query_product & ",'" & item_data.prod_code & "', IFNULL(" & item_data.sales_packing_serial_col_nm & ",'NULL'), IFNULL(" & item_data.sales_packing_cnt_col_nm & ",'0')"
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
|
||||
'구성품 정보 조회 쿼리 생성
|
||||
query_component = Nothing
|
||||
For Each item_data As item_info In item_data_list
|
||||
If item_data.item_type = "C" Then
|
||||
If query_component = Nothing Then
|
||||
query_component = "'" & item_data.prod_code & "', IFNULL(" & item_data.sales_packing_cnt_col_nm & ",'0')"
|
||||
Else
|
||||
query_component = query_component & ",'" & item_data.prod_code & "', IFNULL(" & item_data.sales_packing_cnt_col_nm & ",'0')"
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
'End Sub
|
||||
Private Sub clearVariable()
|
||||
command_serial = Nothing
|
||||
command_count = Nothing
|
||||
@ -299,12 +194,13 @@ Public Class frmMySqlTest
|
||||
dgv_pack_item.Rows.Clear()
|
||||
dgv_pack_item.Refresh()
|
||||
|
||||
For i = 0 To data_set_max_index
|
||||
data_select(i) = "NULL"
|
||||
For i = 0 To basic_info_max_index
|
||||
basic_data_select(i) = "NULL"
|
||||
Next
|
||||
|
||||
For i = 0 To data_count_max_index
|
||||
data_cnt(i) = "0"
|
||||
For Each item_data As item_info In item_data_list
|
||||
item_data.cnt = 0
|
||||
item_data.serial = Nothing
|
||||
Next
|
||||
End Sub
|
||||
|
||||
@ -312,117 +208,24 @@ Public Class frmMySqlTest
|
||||
Dim modelNum As String = Mid(serial, 1, 1)
|
||||
Dim typeNum As String = Mid(serial, 2, 1)
|
||||
|
||||
Select Case modelNum
|
||||
Case modelList.PRO
|
||||
Select Case typeNum
|
||||
Case typeList.prodset_V1
|
||||
command_serial = "Main_Product_SN"
|
||||
command_count = "Set_Cnt"
|
||||
product_serial_type = data_set.set_serial
|
||||
Case typeList.prodface_V2
|
||||
command_serial = "Pro_Face_Serial"
|
||||
command_count = "Pro_CT_FaceCnt"
|
||||
product_serial_type = data_set.pro_fa_serial
|
||||
Case typeList.prodeye
|
||||
command_serial = "Pro_Eye_Serial"
|
||||
command_count = "Pro_CT_EYE_Cnt"
|
||||
product_serial_type = data_set.pro_ey_serial
|
||||
Case typeList.prodbody
|
||||
command_serial = "Pro_Body_Serial"
|
||||
command_count = "Pro_CT_BodyCnt"
|
||||
product_serial_type = data_set.pro_bo_serial
|
||||
End Select
|
||||
If serial.Length = OldSerialNumberLength Then
|
||||
modelNum = Mid(serial, 1, 1)
|
||||
typeNum = Mid(serial, 2, 1)
|
||||
Else
|
||||
modelNum = Mid(serial, 1, 2)
|
||||
typeNum = Mid(serial, 15, 1)
|
||||
End If
|
||||
|
||||
Case modelList.LUX
|
||||
Select Case typeNum
|
||||
Case typeList.prodset_V1
|
||||
command_serial = "Main_Product_SN"
|
||||
command_count = "Set_Cnt"
|
||||
product_serial_type = data_set.set_serial
|
||||
Case typeList.prodface_V2
|
||||
command_serial = "Lux_Face_Serial"
|
||||
command_count = "Lux_CT_FaceCnt"
|
||||
product_serial_type = data_set.lux_fa_serial
|
||||
Case typeList.prodeye
|
||||
command_serial = "Lux_Eye_Serial"
|
||||
command_count = "Lux_CT_EYE_Cnt"
|
||||
product_serial_type = data_set.lux_ey_serial
|
||||
Case typeList.prodbody
|
||||
command_serial = "Lux_Body_Serial"
|
||||
command_count = "Lux_CT_BodyCnt"
|
||||
product_serial_type = data_set.lux_bo_serial
|
||||
End Select
|
||||
dbcmd = "SELECT SalesPackingSerialColNm, SalesPackingCntColNm, CAST(ProdCode AS CHAR) FROM " & prod_table & " WHERE ModelNum = " & modelNum & " AND TypeNum = " & typeNum & " LIMIT 1;"
|
||||
If DBQueryReader(dbcmd) Then
|
||||
command_serial = sqlDataQuery(0)
|
||||
command_count = sqlDataQuery(1)
|
||||
product_serial_type = sqlDataQuery(2)
|
||||
|
||||
Case modelList.MAXIMUM
|
||||
Select Case typeNum
|
||||
Case typeList.prodset_V1
|
||||
command_serial = "MAXIMUM_SN"
|
||||
command_count = "MAXIMUM_Cnt"
|
||||
product_serial_type = data_set.MAXIMUM_serial
|
||||
Case typeList.prodface_V2
|
||||
command_serial = "MAXIMUM_SN"
|
||||
command_count = "MAXIMUM_Cnt"
|
||||
product_serial_type = data_set.MAXIMUM_serial
|
||||
End Select
|
||||
|
||||
Case modelList.ALPHA
|
||||
Select Case typeNum
|
||||
Case typeList.prodset_V1
|
||||
command_serial = "Alpha_Set_Serial"
|
||||
command_count = "Alpha_Set_Cnt"
|
||||
product_serial_type = data_set.Alpha_Serial
|
||||
Case typeList.prodface_V2
|
||||
command_serial = "Alpha_Face_Serial"
|
||||
command_count = "Alpha_Face_Cnt"
|
||||
product_serial_type = data_set.Alpha_fa_Serial
|
||||
Case typeList.prodeye
|
||||
command_serial = "Alpha_Eye_Serial"
|
||||
command_count = "Alpha_Eye_Cnt"
|
||||
product_serial_type = data_set.Alpha_ey_Serial
|
||||
Case typeList.prodbody
|
||||
command_serial = "Alpha_Body_Serial"
|
||||
command_count = "Alpha_Body_Cnt"
|
||||
product_serial_type = data_set.Alpha_bo_Serial
|
||||
End Select
|
||||
|
||||
Case modelList.ALTO
|
||||
Select Case typeNum
|
||||
Case typeList.prodset_V1
|
||||
command_serial = "Alto_Serial"
|
||||
command_count = "Alto_Cnt"
|
||||
product_serial_type = data_set.Alto_Serial
|
||||
End Select
|
||||
|
||||
Case modelList.EFFECT
|
||||
Select Case typeNum
|
||||
Case typeList.prodset_V1
|
||||
command_serial = "Effect_Serial"
|
||||
command_count = "Effect_Cnt"
|
||||
product_serial_type = data_set.Effect_Serial
|
||||
Case typeList.prodbody
|
||||
command_serial = "EffectV3_Serial"
|
||||
command_count = "EffectV3_Cnt"
|
||||
product_serial_type = data_set.EffectV3_Serial
|
||||
End Select
|
||||
|
||||
Case modelList.MAXIMUM_ALPHA
|
||||
Select Case typeNum
|
||||
Case typeList.prodset_V1
|
||||
command_serial = "MAXIMUM_ALPHA_SN"
|
||||
command_count = "MAXIMUM_ALPHA_Cnt"
|
||||
product_serial_type = data_set.MAXIMUM_ALPHA_Serial
|
||||
End Select
|
||||
'신규제품추가 : 추가한 제품의 case 문 업데이트
|
||||
|
||||
End Select
|
||||
|
||||
If command_serial <> Nothing Then
|
||||
dbcmd = "SELECT PackingCode FROM " & sales_table & " WHERE " & command_serial & " LIKE '%" & serial & "%'"
|
||||
|
||||
If DBQueryReader(dbcmd) Then
|
||||
Return sqlDataQuery(0)
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
Return Nothing
|
||||
@ -446,18 +249,18 @@ Public Class frmMySqlTest
|
||||
clearVariable()
|
||||
|
||||
'시리얼번호를 포함하고 있는 패킹코드 검색
|
||||
If Len(txbPacking.Text) = 12 Then
|
||||
If Len(txbPacking.Text) = OldSerialNumberLength Or Len(txbPacking.Text) = NewSerialNumberLength Then
|
||||
packing_code = select_packingCode(txbPacking.Text)
|
||||
End If
|
||||
|
||||
If db_select(packing_code) Then
|
||||
If packing_code <> Nothing And db_select(packing_code) Then
|
||||
If item_out() Then
|
||||
txb_pack_code.Text = data_select(data_set.packcode)
|
||||
txb_pack_date.Text = data_select(data_set.pack_date)
|
||||
txb_state_code.Text = data_select(data_set.ordercode)
|
||||
txb_state_date.Text = data_select(data_set.ship_date)
|
||||
txb_state_name.Text = data_select(data_set.order_name)
|
||||
txb_invoice.Text = data_select(data_set.invoice)
|
||||
txb_pack_code.Text = basic_data_select(basic_info.packcode)
|
||||
txb_pack_date.Text = basic_data_select(basic_info.pack_date)
|
||||
txb_state_code.Text = basic_data_select(basic_info.ordercode)
|
||||
txb_state_date.Text = basic_data_select(basic_info.ship_date)
|
||||
txb_state_name.Text = basic_data_select(basic_info.order_name)
|
||||
txb_invoice.Text = basic_data_select(basic_info.invoice)
|
||||
End If
|
||||
|
||||
If all_serial_list.Count > 1 Then
|
||||
@ -474,26 +277,9 @@ Public Class frmMySqlTest
|
||||
End Sub
|
||||
|
||||
Private Function db_select(packing_code As String) As Boolean
|
||||
|
||||
'패킹, 주문 기본정보 조회
|
||||
dbcmd = "SELECT IFNULL(sale.PackingCode,'NULL')
|
||||
, IFNULL(sale.`Data`,'NULL')
|
||||
|
||||
, IFNULL(sale.Main_Product_SN,'NULL')
|
||||
, IFNULL(sale.Pro_Face_Serial,'NULL')
|
||||
, IFNULL(sale.Lux_Face_Serial,'NULL')
|
||||
, IFNULL(sale.Pro_Eye_Serial,'NULL')
|
||||
, IFNULL(sale.Lux_Eye_Serial,'NULL')
|
||||
, IFNULL(sale.Pro_Body_Serial,'NULL')
|
||||
, IFNULL(sale.Lux_Body_Serial,'NULL')
|
||||
, IFNULL(sale.MAXIMUM_SN,'NULL')
|
||||
, IFNULL(sale.Alpha_Set_Serial,'NULL')
|
||||
, IFNULL(sale.Alpha_Face_Serial,'NULL')
|
||||
, IFNULL(sale.Alpha_Eye_Serial,'NULL')
|
||||
, IFNULL(sale.Alpha_Body_Serial,'NULL')
|
||||
, IFNULL(sale.Alto_Serial,'NULL')
|
||||
, IFNULL(sale.Effect_Serial,'NULL')
|
||||
, IFNULL(sale.EffectV3_Serial,'NULL')
|
||||
, IFNULL(sale.MAXIMUM_ALPHA_SN,'NULL')
|
||||
, IFNULL(sale.note, '')
|
||||
|
||||
, IFNULL(otb.Order_Code,'NULL')
|
||||
@ -502,190 +288,118 @@ Public Class frmMySqlTest
|
||||
, IFNULL(otb.Shipment_Date,'NULL')
|
||||
, IFNULL(otb.Invoice_Number,'NULL')
|
||||
, IFNULL(otb.note,'')
|
||||
|
||||
, IFNULL(sale.Set_Cnt,'0')
|
||||
, '0'
|
||||
, IFNULL(sale.Pro_CT_FaceCnt,'0')
|
||||
, IFNULL(sale.Lux_CT_FaceCnt,'0')
|
||||
, IFNULL(sale.Pro_CT_EYE_Cnt,'0')
|
||||
, IFNULL(sale.Lux_CT_EYE_Cnt,'0')
|
||||
, IFNULL(sale.Pro_CT_BodyCnt,'0')
|
||||
, IFNULL(sale.Lux_CT_BodyCnt,'0')
|
||||
, IFNULL(sale.MAXIMUM_Cnt,'0')
|
||||
, IFNULL(sale.Alpha_Set_Cnt,'0')
|
||||
, IFNULL(sale.Alpha_Face_Cnt,'0')
|
||||
, IFNULL(sale.Alpha_Eye_Cnt,'0')
|
||||
, IFNULL(sale.Alpha_Body_Cnt,'0')
|
||||
, IFNULL(sale.Alto_Cnt,'0')
|
||||
, IFNULL(sale.Effect_Cnt,'0')
|
||||
, IFNULL(sale.EffectV3_Cnt,'0')
|
||||
, IFNULL(sale.MAXIMUM_ALPHA_Cnt,'0')
|
||||
|
||||
, IFNULL(sale.Mask5Cnt,'0')
|
||||
, IFNULL(sale.Mask10Cnt,'0')
|
||||
, IFNULL(sale.HairBandCnt,'0')
|
||||
, IFNULL(sale.GelCnt,'0')
|
||||
, IFNULL(sale.MiniGelCnt,'0')
|
||||
, IFNULL(sale.AmpleCnt,'0')
|
||||
, IFNULL(sale.CreamCnt,'0')
|
||||
, IFNULL(sale.UmbrellaCnt,'0')
|
||||
, IFNULL(sale.FenCnt,'0')
|
||||
, IFNULL(sale.ChargerCnt,'0')
|
||||
, IFNULL(sale.CableCnt,'0')
|
||||
, IFNULL(sale.TonerCnt,'0')
|
||||
, IFNULL(sale.Case_PRO_Black,'0')
|
||||
, IFNULL(sale.Case_PRO_Beige,'0')
|
||||
, IFNULL(sale.Case_PRO_Red,'0')
|
||||
, IFNULL(sale.Case_PRO_Pink,'0')
|
||||
, IFNULL(sale.Case_MAX_Black,'0')
|
||||
, IFNULL(sale.Case_MAX_Apr,'0')
|
||||
, IFNULL(sale.Case_MAX_Mint,'0')
|
||||
, IFNULL(sale.Case_MAX_Beige,'0')
|
||||
, IFNULL(sale.SoothingGelCnt,'0')
|
||||
, IFNULL(sale.Carton0_Cnt,'0')
|
||||
, IFNULL(sale.Carton1_Cnt,'0')
|
||||
, IFNULL(sale.Carton2_Cnt,'0')
|
||||
, IFNULL(sale.Carton3_Cnt,'0')
|
||||
, IFNULL(sale.Carton4_Cnt,'0')
|
||||
, IFNULL(sale.Carton5_Cnt,'0')
|
||||
, IFNULL(sale.Carton6_Cnt,'0')
|
||||
, IFNULL(sale.Shopbag_Cnt,'0')
|
||||
, IFNULL(sale.CosShopbag_Cnt,'0')
|
||||
, IFNULL(sale.DustBagCnt,'0')
|
||||
, IFNULL(sale.Case_MAX_Purple,'0')
|
||||
, IFNULL(sale.Case_PRO_SnakeBlakc,'0')
|
||||
, IFNULL(sale.KollagenCnt,'0')
|
||||
, IFNULL(sale.KollagenSetCnt,'0')
|
||||
, IFNULL(sale.Kollagen_PCnt,'0')
|
||||
, IFNULL(sale.KollagenSet_PCnt,'0')
|
||||
, IFNULL(sale.CleansingWaterCnt,'0')
|
||||
, IFNULL(sale.TonerPadCnt,'0')
|
||||
, IFNULL(sale.Case_MAX_SafBK_Cnt,'0')
|
||||
, IFNULL(sale.Hologram_1Cnt,'0')
|
||||
, IFNULL(sale.Hologram_3Cnt,'0')
|
||||
, IFNULL(sale.Hologram_5Cnt,'0')
|
||||
, IFNULL(sale.Case_MAX_SafPp_Cnt,'0')
|
||||
, IFNULL(sale.Case_MAX_Yellow,'0')
|
||||
, IFNULL(sale.Kollagen_Pe1Cnt,'0')
|
||||
, IFNULL(sale.Kollagen_Pe3Cnt,'0')
|
||||
, IFNULL(sale.Kollagen_Pe5Cnt,'0')
|
||||
, IFNULL(sale.ATCircleCaseCnt,'0')
|
||||
, IFNULL(sale.APSquareCaseCnt,'0')
|
||||
, IFNULL(sale.Case_MAX_Peach,'0')
|
||||
, IFNULL(sale.MasSoothingCnt,'0')
|
||||
, IFNULL(sale.Case_MAX_SMintCnt,'0')
|
||||
, IFNULL(sale.MeshPouchCnt,'0')
|
||||
, IFNULL(sale.FirmingAmpCnt,'0')
|
||||
, IFNULL(sale.HyaluronicAmpCnt,'0')
|
||||
, IFNULL(sale.nightshotcnt,'0')
|
||||
, IFNULL(sale.morningshotcnt,'0')
|
||||
, IFNULL(sale.casemaxwoodicnt,'0')
|
||||
, IFNULL(sale.Elicolltonercnt,'0')
|
||||
, IFNULL(sale.Elicollampcnt,'0')
|
||||
, IFNULL(sale.Elicollcreamcnt,'0')
|
||||
, IFNULL(sale.Elihyaltonercnt,'0')
|
||||
, IFNULL(sale.Elihyalampcnt,'0')
|
||||
, IFNULL(sale.Elihyalcreamcnt,'0')
|
||||
, IFNULL(sale.Dayshotcnt,'0')
|
||||
, IFNULL(sale.Beautyshopbagcnt,'0')
|
||||
, IFNULL(sale.Gummycnt,'0')
|
||||
, IFNULL(sale.stickjellycnt,'0')
|
||||
, IFNULL(sale.Newyearbagcnt,'0')
|
||||
, IFNULL(sale.Emsbeltcnt,'0')
|
||||
, IFNULL(sale.Beltbagcnt,'0')
|
||||
, IFNULL(sale.Dayshot2cnt,'0')
|
||||
, IFNULL(sale.Elixircnt,'0')
|
||||
, IFNULL(sale.Elixirpremiumcnt,'0')
|
||||
, IFNULL(sale.Emsbeltcontrollsetcnt,'0')
|
||||
, IFNULL(sale.FabricBagcnt,'0')
|
||||
, IFNULL(sale.Goldshopbagcnt,'0')
|
||||
, IFNULL(sale.MorNigshotsetcnt,'0')
|
||||
, IFNULL(sale.CTBoxcnt,'0')
|
||||
, IFNULL(sale.ElesqLiftingTonercnt,'0')
|
||||
, IFNULL(sale.ElesqLiftingCeamcnt,'0')
|
||||
, IFNULL(sale.ElesqLiftingECreamcnt,'0')
|
||||
, IFNULL(sale.ElesqLiftingAmpcnt,'0')
|
||||
, IFNULL(sale.ElesqAquaTonercnt,'0')
|
||||
, IFNULL(sale.ElesqAquaCeamcnt,'0')
|
||||
, IFNULL(sale.ElesqAquaECreamcnt,'0')
|
||||
, IFNULL(sale.ElesqAquaAmpcnt,'0')
|
||||
, IFNULL(sale.Carton8_Cnt,'0')
|
||||
, IFNULL(sale.KeyringCnt,'0')
|
||||
, IFNULL(sale.DoenaLiftingTonercnt,'0')
|
||||
, IFNULL(sale.DoenaLiftingAmpcnt,'0')
|
||||
, IFNULL(sale.DoenaLiftingCreamcnt,'0')
|
||||
, IFNULL(sale.FirmingCollagenGelcnt,'0')
|
||||
, IFNULL(sale.KeyringSallyCnt,'0')
|
||||
, IFNULL(sale.BeautykitHairbandCnt,'0')
|
||||
, IFNULL(sale.BeautykitMirrorSCnt,'0')
|
||||
, IFNULL(sale.BeautykitMirrorLCnt,'0')
|
||||
, IFNULL(sale.BloomingMoistureGel150Cnt,'0')
|
||||
, IFNULL(sale.FirmingCollagenGel150Cnt,'0')
|
||||
, IFNULL(sale.TweedCaseCnt,'0')
|
||||
, IFNULL(sale.BloomingMoistureGel250Cnt,'0')
|
||||
FROM " & sales_db & " AS sale LEFT JOIN " & order_db & " AS otb ON sale.PackingCode = otb.Packing_Code
|
||||
WHERE sale.PackingCode = '" & packing_code & "' GROUP BY sale.PackingCode" '신규제품추가/신규구성품추가 : 추가하는 품목의 시리얼, 개수 조회 추가
|
||||
WHERE sale.PackingCode = '" & packing_code & "' GROUP BY sale.PackingCode"
|
||||
|
||||
If DBQueryReader(dbcmd) Then
|
||||
|
||||
For i = 0 To data_set_max_index
|
||||
data_select(i) = sqlDataQuery(i)
|
||||
For i = 0 To basic_info_max_index
|
||||
basic_data_select(i) = sqlDataQuery(i)
|
||||
Next
|
||||
|
||||
For i = 1 To data_count_max_index
|
||||
data_cnt(i) = sqlDataQuery(data_set_max_index + i)
|
||||
Next
|
||||
|
||||
'모든 제품의 시리얼번호를 검색
|
||||
For i = data_set.set_serial To data_set.pack_note - 1
|
||||
If data_select(i) <> "NULL" Then
|
||||
Dim serial_array() As String = data_select(i).Split("/")
|
||||
For j = 0 To serial_array.Length - 1
|
||||
If Len(serial_array(j)) <> 0 Then
|
||||
all_serial_list.Add(serial_array(j))
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
Next
|
||||
|
||||
Return True
|
||||
|
||||
Else
|
||||
Return False
|
||||
End If
|
||||
|
||||
'제품 정보 조회
|
||||
dbcmd = "SELECT " & query_product & " FROM " & sales_db & " WHERE PackingCode = '" & packing_code & "'"
|
||||
If DBQueryReader(dbcmd) Then
|
||||
Dim RowCount As Int16 = (sqlDataQuery.Length / 3) - 1
|
||||
Dim dataSetCount As Int32 = 0
|
||||
Dim prod_code As String
|
||||
Dim serial As String
|
||||
Dim cnt As String
|
||||
|
||||
For row = 0 To RowCount
|
||||
For col = 0 To 2
|
||||
If col = 0 Then
|
||||
prod_code = sqlDataQuery(dataSetCount)
|
||||
ElseIf col = 1 Then
|
||||
serial = sqlDataQuery(dataSetCount)
|
||||
ElseIf col = 2 Then
|
||||
cnt = sqlDataQuery(dataSetCount)
|
||||
End If
|
||||
dataSetCount += 1
|
||||
Next
|
||||
|
||||
For i = 0 To item_data_list.Count - 1
|
||||
Dim item_data As item_info = item_data_list(i)
|
||||
If item_data.item_type = "P" And item_data.prod_code = prod_code Then
|
||||
item_data.serial = serial
|
||||
item_data.cnt = cnt
|
||||
item_data_list(i) = item_data
|
||||
|
||||
'모든 제품의 시리얼번호를 검색
|
||||
If serial <> "NULL" Then
|
||||
Dim serial_array() As String = serial.Split("/")
|
||||
For j = 0 To serial_array.Length - 1
|
||||
If Len(serial_array(j)) <> 0 Then
|
||||
all_serial_list.Add(serial_array(j))
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
Next
|
||||
End If
|
||||
|
||||
'구성품 정보 조회
|
||||
dbcmd = "SELECT " & query_component & " FROM " & sales_db & " WHERE PackingCode = '" & packing_code & "'"
|
||||
If DBQueryReader(dbcmd) Then
|
||||
Dim RowCount As Int16 = (sqlDataQuery.Length / 2) - 1
|
||||
Dim dataSetCount As Int32 = 0
|
||||
Dim prod_code As String
|
||||
Dim cnt As String
|
||||
|
||||
For row = 0 To RowCount
|
||||
For col = 0 To 1
|
||||
If col = 0 Then
|
||||
prod_code = sqlDataQuery(dataSetCount)
|
||||
ElseIf col = 1 Then
|
||||
cnt = sqlDataQuery(dataSetCount)
|
||||
End If
|
||||
dataSetCount += 1
|
||||
Next
|
||||
|
||||
For i = 0 To item_data_list.Count - 1
|
||||
Dim item_data As item_info = item_data_list(i)
|
||||
If item_data.item_type = "C" And item_data.prod_code = prod_code Then
|
||||
item_data.cnt = cnt
|
||||
|
||||
item_data_list(i) = item_data
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
Next
|
||||
End If
|
||||
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Private Function item_out() As Boolean
|
||||
Dim item_name, item_serial As String
|
||||
Dim item_name As String
|
||||
Dim dgv_switch As Boolean
|
||||
|
||||
Try
|
||||
|
||||
For i = 0 To data_count_max_index
|
||||
For Each item_data As item_info In item_data_list
|
||||
dgv_switch = False
|
||||
item_name = Nothing
|
||||
item_serial = Nothing
|
||||
|
||||
If data_cnt(i) > 0 Then
|
||||
If i = data_count.set_cnt Then 'Pro_Set, Lux_Set
|
||||
If Mid(data_select(data_set.set_serial), 1, 2) = "10" Then
|
||||
If item_data.cnt > 0 Then
|
||||
If item_data.item_type = "P" And item_data.prod_code = "1" Or item_data.prod_code = "2" Then 'Pro_Set, Lux_Set
|
||||
If Mid(item_data.serial, 1, 2) = "10" Then
|
||||
item_name = "DUALSONIC Pro 1Set (KR)"
|
||||
Else
|
||||
item_name = "DUALSONIC Lux 1Set (KR)"
|
||||
End If
|
||||
|
||||
item_serial = data_select(data_set.set_serial)
|
||||
ElseIf i < data_count.mask5 Then
|
||||
dbcmd = "SELECT ItemName FROM " & prod_db & " WHERE ProdCode = '" & i & "' AND ItemName NOT LIKE '%체험%' LIMIT 1"
|
||||
ElseIf item_data.item_type = "P" Then
|
||||
dbcmd = "SELECT ItemName FROM " & prod_db & " WHERE ProdCode = '" & item_data.prod_code & "' AND ItemName NOT LIKE '%체험%' LIMIT 1"
|
||||
|
||||
If DBQueryReader(dbcmd) Then
|
||||
item_name = sqlDataQuery(0)
|
||||
End If
|
||||
|
||||
item_serial = data_select(i)
|
||||
Else
|
||||
dbcmd = "SELECT ItemName FROM " & component_db & " WHERE ProdCode = '" & (i - data_count.mask5) & "' LIMIT 1"
|
||||
dbcmd = "SELECT ItemName FROM " & component_db & " WHERE ProdCode = '" & item_data.prod_code & "' LIMIT 1"
|
||||
|
||||
If DBQueryReader(dbcmd) Then
|
||||
item_name = sqlDataQuery(0)
|
||||
@ -696,11 +410,10 @@ Public Class frmMySqlTest
|
||||
End If
|
||||
|
||||
If dgv_switch = True Then
|
||||
dgv_pack_item.Rows.Add(item_name, data_cnt(i), item_serial)
|
||||
dgv_pack_item.Rows.Add(item_name, item_data.cnt, item_data.serial)
|
||||
End If
|
||||
Next
|
||||
|
||||
|
||||
Return True
|
||||
|
||||
Catch ex As Exception
|
||||
@ -715,13 +428,6 @@ Public Class frmMySqlTest
|
||||
txbPacking.BackColor = Color.White
|
||||
End Sub
|
||||
|
||||
' Private Sub txbPacking_KeyDown(ByVal sender As Object, e As KeyEventArgs) Handles txbPacking.KeyDown
|
||||
|
||||
'If e.KeyCode = Keys.KeyCode.Return Then
|
||||
' btnReadDB_Click(sender, e)
|
||||
' End If
|
||||
|
||||
' End Sub
|
||||
Private Sub txbPacking_KeyDown(ByVal sender As Object, e As KeyEventArgs) Handles txbPacking.KeyDown
|
||||
If e.KeyCode = Keys.Return Then
|
||||
btnReadDB_Click(sender, EventArgs.Empty)
|
||||
@ -779,12 +485,18 @@ Public Class frmMySqlTest
|
||||
|
||||
msg_cnt = MsgBox("패킹에 포함된 시리얼번호를 삭제하시겠습니까?", vbExclamation + vbOKCancel)
|
||||
If msg_cnt = 1 Then
|
||||
|
||||
'STEP_01 : jomtTesterDB.jomtSalesPackingTbl 테이블 시리얼번호 삭제
|
||||
Dim remain_serial_data() As String = data_select(product_serial_type).Replace(txbPacking.Text, "").Split("/")
|
||||
Dim remain_serial_data() As String
|
||||
Dim update_serial_str As String = ""
|
||||
Dim update_serial_cnt As UInt16 = 0
|
||||
Dim update_note_str As String = data_select(data_set.pack_note)
|
||||
Dim update_note_str As String = basic_data_select(basic_info.pack_note)
|
||||
|
||||
For Each item_data As item_info In item_data_list
|
||||
If item_data.item_type = "P" And item_data.prod_code = product_serial_type Then
|
||||
remain_serial_data = item_data.serial.Replace(txbPacking.Text, "").Split("/")
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
|
||||
For i = 0 To remain_serial_data.Length - 1
|
||||
If Len(remain_serial_data(i)) <> 0 Then
|
||||
@ -822,7 +534,7 @@ Public Class frmMySqlTest
|
||||
remain_serial_data = sqlDataQuery(0).Replace(txbPacking.Text, "").Split("/")
|
||||
update_serial_str = ""
|
||||
update_serial_cnt = 0
|
||||
update_note_str = data_select(data_set.order_note)
|
||||
update_note_str = basic_data_select(basic_info.order_note)
|
||||
|
||||
For i = 0 To remain_serial_data.Length - 1
|
||||
If Len(remain_serial_data(i)) <> 0 Then
|
||||
@ -912,7 +624,6 @@ Public Class frmMySqlTest
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub btn_delete_Click(sender As Object, e As EventArgs) Handles btn_delete.Click
|
||||
Dim msg_cnt As Int16
|
||||
Dim serial_data As String
|
||||
@ -945,13 +656,9 @@ Public Class frmMySqlTest
|
||||
MsgBox("데이터베이스 안에 전표 데이터가 존재하지 않습니다. 데이터를 확인하여 주십시오.", vbCritical)
|
||||
|
||||
End If
|
||||
|
||||
|
||||
Else
|
||||
MsgBox("삭제가 취소되었습니다.", vbInformation)
|
||||
End If
|
||||
|
||||
|
||||
Else
|
||||
|
||||
If all_serial_list.Count > 1 Then
|
||||
@ -992,26 +699,9 @@ Public Class frmMySqlTest
|
||||
|
||||
dbcmd = "UPDATE " & sales_db &
|
||||
" SET PackingCode = 'null_" & txb_pack_code.Text & "'
|
||||
, Main_Product_SN = NULL
|
||||
, Main_FACE_SN = NULL
|
||||
, Main_EYE_SN = NULL
|
||||
, Pro_Face_Serial = NULL
|
||||
, Pro_Eye_Serial = NULL
|
||||
, Pro_Body_Serial = NULL
|
||||
, Lux_Face_Serial = NULL
|
||||
, Lux_Eye_Serial = NULL
|
||||
, Lux_Body_Serial = NULL
|
||||
, MAXIMUM_SN = NULL
|
||||
, Alpha_Set_Serial = NULL
|
||||
, Alpha_Face_Serial = NULL
|
||||
, Alpha_Eye_Serial = NULL
|
||||
, Alpha_Body_Serial = NULL
|
||||
, Alto_Serial = NULL
|
||||
, Effect_Serial = NULL
|
||||
, EffectV3_Serial = NULL
|
||||
, MAXIMUM_ALPHA_SN = NULL
|
||||
, " & command_serial & " = NULL
|
||||
, note = '" & serial & "'
|
||||
WHERE PackingCode = '" & txb_pack_code.Text & "'" '신규제품추가 : 추가하는 품목의 변수 추가
|
||||
WHERE PackingCode = '" & txb_pack_code.Text & "'"
|
||||
If DBCommand(dbcmd) Then
|
||||
Return True
|
||||
End If
|
||||
@ -1033,8 +723,8 @@ Public Class frmMySqlTest
|
||||
End If
|
||||
Next
|
||||
|
||||
If Len(data_select(data_set.pack_note)) > 0 Then
|
||||
serial_data = data_select(data_set.pack_note) & "," & serial_data
|
||||
If Len(basic_data_select(basic_info.pack_note)) > 0 Then
|
||||
serial_data = basic_data_select(basic_info.pack_note) & "," & serial_data
|
||||
End If
|
||||
|
||||
Return serial_data
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user