📄 frmdlstageissuegoods.frm
字号:
Do While j < mfrmToFormname.grdCol.Rows '=0为未覆盖标志
mfrmToFormname.grdCol.TextMatrix(j, 41) = "0"
j = j + 1
Loop
j = 1
While j < msgGrid.Rows
If (getnumber(j, 8) <> getnumber(j, l) Or getnumber(j, 10) <> getnumber(j, n) Or msgGrid.TextMatrix(j, 1) = "√") Then '前后有否变化
k = 1
Do While k < intCount '商品是否添加
If msgGrid.TextMatrix(j, 16) = mfrmToFormname.grdCol.TextMatrix(k, 28) Then
Exit Do
End If
k = k + 1
Loop
If k >= intCount Then
If C2Lng(mfrmToFormname.grdCol.TextMatrix(mfrmToFormname.grdCol.Rows - 1, 28)) <> 0 Then
mfrmToFormname.InsertARow
'False
End If
i = mfrmToFormname.grdCol.Rows - 1
mfrmToFormname.grdCol.TextMatrix(i, 41) = "1" '=1为已覆盖标志
msgGrid.TextMatrix(j, 2) = i '保存数据所赋予对方Grid所在的行
mfrmToFormname.grdCol.TextMatrix(i, 1) = msgGrid.TextMatrix(j, 29) '商品名称
mfrmToFormname.grdCol.TextMatrix(i, 28) = msgGrid.TextMatrix(j, 16) '商品ID
mfrmToFormname.grdCol.TextMatrix(i, 3) = msgGrid.TextMatrix(j, 33) '货位
mfrmToFormname.grdCol.TextMatrix(i, 30) = msgGrid.TextMatrix(j, 32) '货位ID
mfrmToFormname.grdCol.TextMatrix(i, 4) = msgGrid.TextMatrix(j, 30) '计量单位
mfrmToFormname.grdCol.TextMatrix(i, 31) = msgGrid.TextMatrix(j, 17) '计量单位ID
mfrmToFormname.grdCol.TextMatrix(i, 5) = msgGrid.TextMatrix(j, n) '数量
mfrmToFormname.grdCol.TextMatrix(i, 6) = msgGrid.TextMatrix(j, 19) '单价
mfrmToFormname.grdCol.TextMatrix(i, 8) = "100.00" '扣率
mfrmToFormname.grdCol.TextMatrix(i, 11) = msgGrid.TextMatrix(j, 31) '税率
mfrmToFormname.grdCol.TextMatrix(i, 32) = msgGrid.TextMatrix(j, 20) '税率ID
Call mfrmToFormname.WriteGrd(getnumber(j, l), i, 14) '原币含税金额
mfrmToFormname.grdCol.TextMatrix(i, 17) = msgGrid.TextMatrix(j, 41) '生产批号
mfrmToFormname.grdCol.TextMatrix(i, 18) = msgGrid.TextMatrix(j, 14) '生产日期
mfrmToFormname.grdCol.TextMatrix(i, 19) = msgGrid.TextMatrix(j, 15) '到期日期
mfrmToFormname.grdCol.TextMatrix(i, 20) = msgGrid.TextMatrix(j, 42) '保质期
mfrmToFormname.grdCol.TextMatrix(i, 21) = msgGrid.TextMatrix(j, 34) '工程名称
mfrmToFormname.grdCol.TextMatrix(i, 33) = msgGrid.TextMatrix(j, 21) '工程ID
mfrmToFormname.grdCol.TextMatrix(i, 22) = msgGrid.TextMatrix(j, 35) '自定义项目1
mfrmToFormname.grdCol.TextMatrix(i, 23) = msgGrid.TextMatrix(j, 36) '自定义项目2
mfrmToFormname.grdCol.TextMatrix(i, 24) = msgGrid.TextMatrix(j, 37) '自定义项目3
mfrmToFormname.grdCol.TextMatrix(i, 25) = msgGrid.TextMatrix(j, 38) '自定义项目4
mfrmToFormname.grdCol.TextMatrix(i, 26) = msgGrid.TextMatrix(j, 39) '自定义项目5
mfrmToFormname.grdCol.TextMatrix(i, 27) = msgGrid.TextMatrix(j, 40) '自定义项目6
mfrmToFormname.grdCol.TextMatrix(i, 34) = msgGrid.TextMatrix(j, 22) '自定义项目1
mfrmToFormname.grdCol.TextMatrix(i, 35) = msgGrid.TextMatrix(j, 23) '自定义项目2
mfrmToFormname.grdCol.TextMatrix(i, 36) = msgGrid.TextMatrix(j, 24) '自定义项目3
mfrmToFormname.grdCol.TextMatrix(i, 37) = msgGrid.TextMatrix(j, 25) '自定义项目4
mfrmToFormname.grdCol.TextMatrix(i, 38) = msgGrid.TextMatrix(j, 26) '自定义项目5
mfrmToFormname.grdCol.TextMatrix(i, 39) = msgGrid.TextMatrix(j, 27) '自定义项目6
mfrmToFormname.grdCol.TextMatrix(i, 40) = msgGrid.TextMatrix(j, 28) '转换因子
Else
msgGrid.TextMatrix(j, 2) = k '保存数据所赋予对方Grid所在的行
If Trim(mfrmToFormname.grdCol.TextMatrix(k, 41)) = "1" Then '=1为已覆盖标志
dblhl = Val(Balance.translate_minsl(mfrmToFormname.grdCol.TextMatrix(k, 5), getnumber(j, 28))) + Val(Balance.translate_minsl(msgGrid.TextMatrix(j, n), getnumber(j, 28)))
mfrmToFormname.grdCol.TextMatrix(k, 5) = Balance.intTodec(dblhl, getnumber(j, 28), True)
Call mfrmToFormname.WriteGrd((C2Dbl(mfrmToFormname.grdCol.TextMatrix(k, 14)) + getnumber(j, l)), k, 14) '原币含税金额
Else
mfrmToFormname.grdCol.TextMatrix(k, 5) = msgGrid.TextMatrix(j, n)
Call mfrmToFormname.WriteGrd(getnumber(j, l), k, 14) '原币含税金额
mfrmToFormname.grdCol.TextMatrix(i, 41) = "1" '=1为已覆盖标志
End If
End If
End If
j = j + 1
Wend
j = 1
Do While j < mfrmToFormname.grdCol.Rows '=0为未覆盖标志
mfrmToFormname.CalcAmount j
If C2Dbl(mfrmToFormname.grdCol.TextMatrix(j, 14)) = 0 Then '原币含税金额
mfrmToFormname.blnDeleteARow j
End If
j = j + 1
Loop
blnColse = mfrmToFormname.SaveBill
If blnColse = True Then
i = 1
While i < msgGrid.Rows
If (getnumber(i, 8) <> getnumber(i, l) Or getnumber(i, 10) <> getnumber(i, n)) Then '前后有否变化
GoodsID = getnumber(i, 0)
ActID = CLng(IIf(Len(Trim(mfrmToFormname.grdCol.TextMatrix(getnumber(i, 2), 0))) = 0, "0", mfrmToFormname.grdCol.TextMatrix(getnumber(i, 2), 0)))
dblsl = Balance.translate_minsl(msgGrid.TextMatrix(i, n), getnumber(i, 28))
dblhl = Balance.translate_minsl(msgGrid.TextMatrix(i, 10), getnumber(i, 28))
dblje = getnumber(i, l)
If (getnumber(i, 8) = 0 And getnumber(i, l) <> 0) Then '新增情况
' If (getnumber(i, 13) = 17) Then '17=分期结算
strSql = "Insert into StageToSale (lngStageActivityDetailID,lngSaleActivityDetailID,dblQuantity,dblCurrAmount) " _
& " Values(" & GoodsID & "," & ActID & "," & dblsl & "," & dblje & " )"
' Else
' strSQL = "Insert into StageToSale (lngStageActivityDetailID,dblQuantity,dblCurrAmount) " _
' & " Values(" & GoodsID & "," & dblsl & "," & dblje & ")"
' End If
blnColse = gclsBase.ExecSQL(strSql)
strSql = "Update ItemActivityDetail Set dblSettlementQuantity=dblSettlementQuantity + " & dblsl & " - " & dblhl & ", " _
& "dblCurrSettlementAmount = dblCurrSettlementAmount + " & dblje & " - " & getnumber(i, 8) & " " _
& " where lngActivityDetailID=" & GoodsID & ""
blnColse = gclsBase.ExecSQL(strSql)
Else '更新情况
' If (getnumber(i, 13) = 17) Then '分期结算
strSql = "Update StageToSale Set dblQuantity = " & dblsl & " ,dblCurrAmount=" & dblje & " " _
& " Where lngSaleActivityDetailID =" & ActID & " And lngStageActivityDetailID =" & GoodsID & ""
blnColse = gclsBase.ExecSQL(strSql)
' Else
' strSQL = "Update StageToSale Set dblQuantity = " & dblsl & " ,dblCurrAmount=" & dblje & "" _
& " Where lngStageActivityDetailID =" & GoodsID & ""
' End If
strSql = "Update ItemActivityDetail Set dblSettlementQuantity=dblSettlementQuantity + " & dblsl & " - " & dblhl & ", " _
& "dblCurrSettlementAmount = dblCurrSettlementAmount + " & dblje & " - " & getnumber(i, 8) & " " _
& " where lngActivityDetailID=" & GoodsID & ""
blnColse = gclsBase.ExecSQL(strSql)
End If
End If
i = i + 1
Wend
End If
strSql = "Delete * From StageToSale Where dblQuantity=0 Or dblCurrAmount=0;"
blnColse = gclsBase.ExecSQL(strSql)
'MousePointer = vbDefault
If kkk = 1 Then
Unload Me
End If
'Exit Sub
'Err:
' MousePointer = vbDefault
' ShowMsg Me.hWnd, "数据保存失败 ", MB_SYSTEMMODAL + MB_ICONEXCLAMATION, "分期发出商品"
End Sub
'关联
Private Sub Cmdall_Click(Index As Integer)
'响应窗体按钮动作
'If msgGrid.Rows > 1 Then
Select Case Index
Case 7 '确定存盘
blnIsCancel = True
If msgGrid.Rows > 1 Then
SaveData (1)
Else
CancelGrid
End If
Case 1 '取消
blnIsCancel = True
CancelGrid
Case 2 '筛选
FilterData
Case 3 '栏目设置
setColumn
Case 4
'ExitGrid
Case 5 '全部选择
If msgGrid.Rows > 1 Then
BalenceAll (0)
End If
Case 6
If msgGrid.Rows > 1 Then
BalenceAll (1) '全部取消
End If
End Select
'Else
'CancelGrid
'End If
End Sub
'重定窗体中各控件的位置、大小
Private Sub Form_Resize()
If mblnFormNoRezise Then Exit Sub
If Me.WindowState = 1 Then
Exit Sub
End If
On Error Resume Next
If Me.Height < intFormHeight Then Me.Height = intFormHeight
If Me.Width < intFormWidth Then Me.Width = intFormWidth
RedrawForm
End Sub
Private Sub RedrawForm()
'重画MS FlexGrid 控件
Dim leftx As Integer
On Error Resume Next
With msgGrid
.Width = Me.ScaleWidth - DlListFormLeft - DlListFormRight * 2 - DlFormButtonWidth
.Height = Me.ScaleHeight - DlListUpAreaHeight - DlListDownAreaHeight - DlListFormBottom
End With
'重画其余控件
leftx = Me.ScaleLeft + Me.ScaleWidth - DlFormButtonWidth - DlListFormRight + 18
Cmdall(0).Left = leftx
Cmdall(0).Left = leftx
Cmdall(7).Left = leftx
Cmdall(1).Left = leftx
Cmdall(2).Left = leftx
Cmdall(3).Left = leftx
Cmdall(5).Left = leftx
Cmdall(6).Left = leftx
Lbb(1).top = 120
Cmdall(7).top = Me.ScaleTop + Lbb(1).Height + Lbb(1).top
Cmdall(1).top = Cmdall(7).top + 9 + DlFormButtonHeight
Cmdall(2).top = Cmdall(1).top + 133 + DlFormButtonHeight
Cmdall(3).top = Cmdall(2).top + 9 + DlFormButtonHeight
Cmdall(5).top = Cmdall(3).top + 133 + DlFormButtonHeight
Cmdall(6).top = Cmdall(5).top + 9 + DlFormButtonHeight
Label1(0).top = 120
lbdw.top = 120
Label1(0).Left = msgGrid.Left
lbdw.Left = msgGrid.Left + 600
lbdw.Width = msgGrid.Width / 2
'
Lbb(0).top = 120
Lbb(1).top = 120
Lbb(1).Width = Int(msgGrid.Width / 7)
Lbb(1).Left = msgGrid.Width - Lbb(1).Width
Lbb(0).Left = Lbb(1).Left - Lbb(0).Width + 135
mclsGrid.TotalRowAdjust
Me.Refresh
End Sub
'Flexgrid显示栏目设置
Private Sub setColumn()
Dim i As Integer
'On Error GoTo Err
'If msgGrid.Rows > 1 Then
i = 1
strWorkID = ""
Do While i < msgGrid.Rows
If msgGrid.TextMatrix(i, 1) = "√" Then
If Len(strWorkID) > 0 Then
strWorkID = strWorkID & "," & CStr(getnumber(i, 0))
Else
strWorkID = CStr(getnumber(i, 0))
End If
End If
i = i + 1
Loop
strWorkID = "( " & strWorkID & " )"
isinit = False
If msgGrid.Rows > 1 Then
If ShowMsg(Me.hwnd, "栏目设置后,你刚刚做的结算将被取消,需要先存盘吗", MB_YESNO + MB_ICONQUESTION + MB_DEFBUTTON2 + MB_SYSTEMMODAL, "分期发出商品") = IDYES Then
SaveData (0)
End If
mclsGrid.GridToListSet
End If
mclsGrid.ListSet.SaveList
If mclsGrid.ListSet.ShowListSet(mclsGrid.ListSet.ViewId) Then
GetList
mclsGrid.SetupStyle
End If
isinit = True
'End If
'Exit Sub
'Err:
' ShowMsg Me.hwnd, "栏目设置操作不成功 ", MB_SYSTEMMODAL + MB_ICONEXCLAMATION, "分期发出商品"
End Sub
Private Sub Form_Load()
Set mclsGrid = New NewGrid
Set mclsGrid.Grid = msgGrid
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -