📄 frmdlselectallsalereceipt.frm
字号:
Unload Me
End Sub
'从对应视图取SQL语句并打开、初始化之
Private Sub GetList()
Dim sqlselect As String, strSql As String, strSelect As String, str As String
Dim strWhere As String, pbsql As String, strFrom As String
Dim recRecordset As rdoResultset, intCount As Integer
On Error GoTo Err
mclsGrid.ListSet.ViewId = intViewID
With msgGrid
.Redraw = False
.FixedCols = 0
End With
strWhere = ""
str = ""
strSql = ""
strFrom = ""
pbsql = ""
With mclsGrid.ListSet
strFrom = .FromOfSql
pbsql = .SelectOfSql
strWhere = .WhereOfSql
End With
str = " Where ((([dblQuantity]-[dblSendQuantity])<>0) And ((SaleOrder.blnIsVoid)=False) AND ((SaleOrderDetail.blnIsClose)=False) AND ((SaleOrder.lngCustomerID)=" & CustomerID & ") AND ((SaleOrder.lngCurrencyID)=" & CurrencyID & " ))"
If Len(Trim(strWhere)) >= 1 Then str = str & "AND" & " ( " & strWhere & ")"
strSql = strFrom & str
sqlselect = " Select SaleOrderDetail.lngSaleOrderDetailID As 业务ID, iif(dblSendQuantity>0,'','') As 选择," _
& " Trim(Str([dblSendQuantity]\[dblFactor]))+'.'+String(Len(Trim(Str([dblFactor])))-Len(Trim(Str([dblSendQuantity] Mod " _
& " [dblFactor]))),'0')+Trim(Str([dblSendQuantity] Mod [dblFactor])) AS 原销售数量, dblCurrTaxAmount+dblCurrAmount AS 原销售金额, " _
& " Trim(Str(([dblQuantity]-[dblSendQuantity])\[dblFactor]))+'.'+String(Len(Trim(Str([dblFactor])))-Len(Trim(Str(([dblQuantity]-[dblSendQuantity]) Mod " _
& " [dblFactor]))),'0')+Trim(Str(([dblQuantity]-[dblSendQuantity]) Mod [dblFactor])) AS 原未销售数量, " _
& " Format((dblCurrTaxAmount+dblCurrAmount-[dblSendQuantity]*[dblPrice]*[dblFactor]*(1+iif(isnull(dblSaleTaxRate),0,dblSaleTaxRate/100))),'####.00') AS 原未销售金额, (SaleOrder.strReceiptNO & SaleOrder.lngReceiptNO) AS 原销售单号,lngClassID1 As 7," _
& " lngClassID2 As 8,SaleOrderDetail.lngItemID As 9,SaleOrderDetail.lngUnitID As 10,dblDiscountRate As 11,dblPrice*dblFactor As 12,SaleOrderDetail.lngTaxID As 13,SaleOrderDetail.lngJobID As 14," _
& " SaleOrderDetail.lngCustomID0,SaleOrderDetail.lngCustomID1,SaleOrderDetail.lngCustomID2,SaleOrderDetail.lngCustomID3,SaleOrderDetail.lngCustomID4,SaleOrderDetail.lngCustomID5,strReceiptNO As 21," _
& " strReceiptNO & ' ' & Format(lngReceiptNO, '0000') As 22,dblFactor As 23,(strItemCode & ' ' & strItemName & ' ' & strItemStyle) As 24,strUnitName As 25,strTaxName As 26,Item.lngPositionID As 27,strPositionName As 28,strJobName As 29," _
& " Custom0.strCustomName As 30,Custom1.strCustomName As 31,Custom2.strCustomName As 32,Custom3.strCustomName As 33,Custom4.strCustomName As 34,Custom5.strCustomName As 35, " & pbsql
'备份 sqlselect = " Select SaleOrderDetail.lngSaleOrderDetailID As 业务ID, iif(dblSendQuantity>0,'','') As 选择," _
& " Trim(Str([dblSendQuantity]\[dblFactor]))+'.'+String(Len(Trim(Str([dblFactor])))-Len(Trim(Str([dblSendQuantity] Mod " _
& " [dblFactor]))),'0')+Trim(Str([dblSendQuantity] Mod [dblFactor])) AS 原销售数量, dblCurrTaxAmount+dblCurrAmount AS 原销售金额, " _
& " Trim(Str(([dblQuantity]-[dblSendQuantity])\[dblFactor]))+'.'+String(Len(Trim(Str([dblFactor])))-Len(Trim(Str(([dblQuantity]-[dblSendQuantity]) Mod " _
& " [dblFactor]))),'0')+Trim(Str(([dblQuantity]-[dblSendQuantity]) Mod [dblFactor])) AS 原未销售数量, " _
& " Format((dblCurrTaxAmount+dblCurrAmount-[dblSendQuantity]*[dblPrice]*[dblFactor]*(1+iif(isnull(dblSaleTaxRate),0,dblSaleTaxRate/100))),'####.00') AS 原未销售金额, (SaleOrder.strReceiptNO & SaleOrder.lngReceiptNO) AS 原销售单号,lngClassID1 As 7," _
& " lngClassID2 As 8,SaleOrderDetail.lngItemID As 9,SaleOrderDetail.lngUnitID As 10,dblDiscountRate As 11,dblPrice*dblFactor As 12,SaleOrderDetail.lngTaxID As 13,SaleOrderDetail.lngJobID As 14," _
& " SaleOrderDetail.lngCustomID0,SaleOrderDetail.lngCustomID1,SaleOrderDetail.lngCustomID2,SaleOrderDetail.lngCustomID3,SaleOrderDetail.lngCustomID4,SaleOrderDetail.lngCustomID5,strReceiptNO As 21," _
& " strReceiptNO & ' ' & Format(lngReceiptNO, '0000') As 22,dblFactor As 23,(strItemCode & ' ' & strItemName & ' ' & strItemStyle) As 24,strUnitName As 25,strTaxName As 26,Item.lngPositionID As 27,strPositionName As 28,strJobName As 29," _
& " Custom0.strCustomName As 30,Custom1.strCustomName As 31,Custom2.strCustomName As 32,Custom3.strCustomName As 33,Custom4.strCustomName As 34,Custom5.strCustomName As 35, " & pbsql
strSql = sqlselect & strSql
Set recRecordset = gclsBase.BaseDB.OpenRecordset(strSql, dbOpenSnapshot)
'列表是否为空
If recRecordset.RowCount = 0 Then
msgGrid.HighLight = flexHighlightNever
Else
recRecordset.MoveLast
End If
Set Datadl.Recordset = recRecordset
msgGrid.HighLight = flexHighlightAlways
recRecordset.Close
'
' With msgGrid
' .SelectionMode = flexSelectionFree
' .FocusRect = flexFocusNone
' .ColWidth(0) = 0
' .ColWidth(1) = 488
' intCount = 2
' While intCount <= 35
' .ColWidth(intCount) = 0
' intCount = intCount + 1
' Wend
' .Redraw = True
'
' End With
Exit Sub
Err:
ShowMsg Me.hwnd, "选择所有销售订单资料程序初始化失败! ", MB_SYSTEMMODAL + MB_ICONEXCLAMATION, "提示信息"
End Sub
'结算内容筛选
Private Sub FilterData()
End Sub
'存盘
Private Sub SaveData(kkk As Integer) '存盘
Dim i As Integer, j As Integer, temp As Double, strSql As String
Dim l As Integer, n As Integer, slh As String, m As Integer, intCount As Integer, k As Integer
Dim blnColse As Boolean
'On Error GoTo Err
'i = 1
Me.MousePointer = vbHourglass
l = intfixl
n = intfixl
m = intfixl
While (msgGrid.TextMatrix(0, m) <> "关闭")
m = m + 1
Wend
While (msgGrid.TextMatrix(0, l) <> "未销售金额")
l = l + 1
Wend
While (msgGrid.TextMatrix(0, n) <> "未销售数量")
n = n + 1
Wend
intCount = mfrmToFormname.grdCol.Rows
If mfrmToFormname.grdCol.Rows < 2 Then
mfrmToFormname.InsertARow
'False
intCount = intCount + 1
End If
' j = 1
' Do While j < mfrmToFormname.grdCol.Rows '=0为未覆盖标志
' mfrmToFormname.grdCol.TextMatrix(j, 41) = "0"
' j = j + 1
' Loop
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'' 关于以下每一行的注释请参阅选择销售订单——frmdlSelectSaleReceipt ' '
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
j = 1
While j < msgGrid.Rows
If (msgGrid.TextMatrix(j, 1) = "√") Then '前后有否变化
k = 1
Do While k < intCount
If msgGrid.TextMatrix(j, 0) = mfrmToFormname.grdCol.TextMatrix(k, 29) 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, 1) = msgGrid.TextMatrix(j, 24)
mfrmToFormname.grdCol.TextMatrix(i, 28) = msgGrid.TextMatrix(j, 9)
mfrmToFormname.grdCol.TextMatrix(i, 2) = msgGrid.TextMatrix(j, 22)
mfrmToFormname.grdCol.TextMatrix(i, 29) = msgGrid.TextMatrix(j, 0)
mfrmToFormname.grdCol.TextMatrix(i, 3) = msgGrid.TextMatrix(j, 28)
mfrmToFormname.grdCol.TextMatrix(i, 30) = msgGrid.TextMatrix(j, 27)
mfrmToFormname.grdCol.TextMatrix(i, 4) = msgGrid.TextMatrix(j, 25)
mfrmToFormname.grdCol.TextMatrix(i, 31) = msgGrid.TextMatrix(j, 10)
mfrmToFormname.grdCol.TextMatrix(i, 5) = msgGrid.TextMatrix(j, n)
mfrmToFormname.grdCol.TextMatrix(i, 6) = msgGrid.TextMatrix(j, 12)
mfrmToFormname.grdCol.TextMatrix(i, 14) = msgGrid.TextMatrix(j, l)
mfrmToFormname.grdCol.TextMatrix(i, 8) = msgGrid.TextMatrix(j, 11)
mfrmToFormname.grdCol.TextMatrix(i, 11) = msgGrid.TextMatrix(j, 26)
mfrmToFormname.grdCol.TextMatrix(i, 32) = msgGrid.TextMatrix(j, 13)
mfrmToFormname.grdCol.TextMatrix(i, 21) = msgGrid.TextMatrix(j, 29)
mfrmToFormname.grdCol.TextMatrix(i, 33) = msgGrid.TextMatrix(j, 14)
mfrmToFormname.grdCol.TextMatrix(i, 22) = msgGrid.TextMatrix(j, 30)
mfrmToFormname.grdCol.TextMatrix(i, 23) = msgGrid.TextMatrix(j, 31)
mfrmToFormname.grdCol.TextMatrix(i, 24) = msgGrid.TextMatrix(j, 32)
mfrmToFormname.grdCol.TextMatrix(i, 25) = msgGrid.TextMatrix(j, 33)
mfrmToFormname.grdCol.TextMatrix(i, 26) = msgGrid.TextMatrix(j, 34)
mfrmToFormname.grdCol.TextMatrix(i, 27) = msgGrid.TextMatrix(j, 35)
mfrmToFormname.grdCol.TextMatrix(i, 34) = msgGrid.TextMatrix(j, 15)
mfrmToFormname.grdCol.TextMatrix(i, 35) = msgGrid.TextMatrix(j, 16)
mfrmToFormname.grdCol.TextMatrix(i, 36) = msgGrid.TextMatrix(j, 17)
mfrmToFormname.grdCol.TextMatrix(i, 37) = msgGrid.TextMatrix(j, 18)
mfrmToFormname.grdCol.TextMatrix(i, 38) = msgGrid.TextMatrix(j, 19)
mfrmToFormname.grdCol.TextMatrix(i, 39) = msgGrid.TextMatrix(j, 20)
mfrmToFormname.grdCol.TextMatrix(i, 40) = msgGrid.TextMatrix(j, 23)
mfrmToFormname.grdCol.TextMatrix(i, 41) = msgGrid.TextMatrix(j, n)
Else
mfrmToFormname.grdCol.TextMatrix(k, 1) = msgGrid.TextMatrix(j, 24)
mfrmToFormname.grdCol.TextMatrix(k, 28) = msgGrid.TextMatrix(j, 9)
mfrmToFormname.grdCol.TextMatrix(k, 2) = msgGrid.TextMatrix(j, 22)
mfrmToFormname.grdCol.TextMatrix(k, 29) = msgGrid.TextMatrix(j, 0)
mfrmToFormname.grdCol.TextMatrix(k, 3) = msgGrid.TextMatrix(j, 28)
mfrmToFormname.grdCol.TextMatrix(k, 30) = msgGrid.TextMatrix(j, 27)
mfrmToFormname.grdCol.TextMatrix(k, 4) = msgGrid.TextMatrix(j, 25)
mfrmToFormname.grdCol.TextMatrix(k, 31) = msgGrid.TextMatrix(j, 10)
mfrmToFormname.grdCol.TextMatrix(k, 5) = msgGrid.TextMatrix(j, n)
mfrmToFormname.grdCol.TextMatrix(k, 6) = msgGrid.TextMatrix(j, 12)
mfrmToFormname.grdCol.TextMatrix(k, 14) = msgGrid.TextMatrix(j, l)
mfrmToFormname.grdCol.TextMatrix(k, 8) = msgGrid.TextMatrix(j, 11)
mfrmToFormname.grdCol.TextMatrix(k, 11) = msgGrid.TextMatrix(j, 26)
mfrmToFormname.grdCol.TextMatrix(k, 32) = msgGrid.TextMatrix(j, 13)
mfrmToFormname.grdCol.TextMatrix(k, 21) = msgGrid.TextMatrix(j, 29)
mfrmToFormname.grdCol.TextMatrix(k, 33) = msgGrid.TextMatrix(j, 14)
mfrmToFormname.grdCol.TextMatrix(k, 22) = msgGrid.TextMatrix(j, 30)
mfrmToFormname.grdCol.TextMatrix(k, 23) = msgGrid.TextMatrix(j, 31)
mfrmToFormname.grdCol.TextMatrix(k, 24) = msgGrid.TextMatrix(j, 32)
mfrmToFormname.grdCol.TextMatrix(k, 25) = msgGrid.TextMatrix(j, 33)
mfrmToFormname.grdCol.TextMatrix(k, 26) = msgGrid.TextMatrix(j, 34)
mfrmToFormname.grdCol.TextMatrix(k, 27) = msgGrid.TextMatrix(j, 35)
mfrmToFormname.grdCol.TextMatrix(k, 34) = msgGrid.TextMatrix(j, 15)
mfrmToFormname.grdCol.TextMatrix(k, 35) = msgGrid.TextMatrix(j, 16)
mfrmToFormname.grdCol.TextMatrix(k, 36) = msgGrid.TextMatrix(j, 17)
mfrmToFormname.grdCol.TextMatrix(k, 37) = msgGrid.TextMatrix(j, 18)
mfrmToFormname.grdCol.TextMatrix(k, 38) = msgGrid.TextMatrix(j, 19)
mfrmToFormname.grdCol.TextMatrix(k, 39) = msgGrid.TextMatrix(j, 20)
mfrmToFormname.grdCol.TextMatrix(k, 40) = msgGrid.TextMatrix(j, 23)
End If
blnColse = IIf(Trim(msgGrid.TextMatrix(j, m)) = "√", True, False)
slh = "Update SaleOrderDetail Set blnIsClose =" & blnColse & " Where lngSaleOrderDetailID=" & getnumber(j, 0) & ""
gclsBase.ExecSQL slh
End If
j = j + 1
Wend
j = 1
Do While j < mfrmToFormname.grdCol.Rows '=0为未覆盖标志
mfrmToFormname.CalcAmount j
j = j + 1
Loop
Me.MousePointer = vbDefault
If kkk = 1 Then
Unload Me
End If
'Exit Sub
'Err:
' ShowMsg Me.hWnd, "系统出错! ", MB_SYSTEMMODAL + MB_ICONEXCLAMATION, "提示信息"
End Sub
'关联
'重定窗体中各控件的位置、大小
Private Sub Form_Resize()
End Sub
Private Sub RedrawForm()
End Sub
'Flexgrid显示栏目设置
Private Sub setColumn()
End Sub
Private Sub Form_Load()
mfrmToFormname.MousePointer = vbDefault
End Sub
Private Sub Form_Unload(Cancel As Integer)
Set mfrmToFormname = Nothing
Set mclsGrid = Nothing
End Sub
'从Flexgrid中取出数字值
Private Function getnumber(getx As Integer, gety As Integer) As Double
If (Len(msgGrid.TextMatrix(getx, gety)) = 0 Or IsNull(msgGrid.TextMatrix(getx, gety))) Then
getnumber = 0
Else
getnumber = CDbl(msgGrid.TextMatrix(getx, gety))
End If
End Function
'本函数用于做结算与非结算处理
Private Sub msgGrid_Click()
End Sub
Private Sub msgGrid_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
With msgGrid
If .MouseCol = 1 Or msgGrid.TextMatrix(0, .MouseCol) = "关闭" Then
.MousePointer = vbCustom
Else
.MousePointer = vbDefault
End If
End With
End Sub
'右键菜单
Private Sub msgGrid_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
End Sub
Public Sub GivemeParameter(ToForm As Object, Optional dwID As Long = 0, Optional bzID As Long = 0, Optional ywID As Long = 0)
Set mfrmToFormname = ToForm
mfrmToFormname.MousePointer = vbHourglass
DetailID = mfrmToFormname.getID
CustomerID = C2Lng(mfrmToFormname.lblHead(0).Tag)
CurrencyID = mfrmToFormname.GetFID(7)
If CustomerID < 1 Then
mfrmToFormname.MousePointer = vbDefault
ShowMsg mfrmToFormname.hwnd, "请先输入单位!", MB_SYSTEMMODAL + MB_ICONEXCLAMATION, "选择订单"
Exit Sub
End If
If CurrencyID < 1 Then
mfrmToFormname.MousePointer = vbDefault
ShowMsg mfrmToFormname.hwnd, "请先输入币种!", MB_SYSTEMMODAL + MB_ICONEXCLAMATION, "选择订单"
Exit Sub
End If
Set mclsGrid = New Grid
Set mclsGrid.Grid = msgGrid
mclsGrid.ColOfs = intfixl
GetList
BalenceAll
mfrmToFormname.MousePointer = vbDefault
Cmdall_Click (0)
' mfrmToFormname.MousePointer = vbDefault
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -