frm_update_sales.frm
来自「很好一套库存管理」· FRM 代码 · 共 824 行 · 第 1/2 页
FRM
824 行
Left = 240
TabIndex = 5
Top = 240
Width = 1575
End
End
Attribute VB_Name = "FRM_UPDATE_SALES"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim cust_names As New ADODB.Recordset
Dim rs_data As New ADODB.Recordset
Private Sub Combo1_Click(Index As Integer)
If Index = 0 Then
Dim invoice As New ADODB.Recordset
invoice.Open "select distinct Invoice_no from Sales_master where Party_name='" & Combo1(0).Text & "'", db, adOpenKeyset, adLockOptimistic
Combo1(1).Clear
While invoice.EOF <> True
Combo1(1).AddItem invoice.Fields(0).Value
invoice.MoveNext
Wend
ElseIf Index = 1 Then
GETDATA
Text1.Text = rs_data.Fields(3).Value
End If
End Sub
Private Sub Combo1_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
If KeyCode = 13 Then
If Len(Combo1(Index)) > 0 Then
SendKeys "{TAB}"
End If
End If
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 27 Then
Unload Me
End If
End Sub
Private Sub Form_Load()
KeyPreview = True
Me.Left = 0
Me.Top = 0
cust_names.Open "select distinct Party_name from Sales_master", db, adOpenKeyset, adLockOptimistic
If cust_names.RecordCount = 0 Then
MsgBox "No Record Found ...", vbInformation, "No Record Found ..."
Unload Me
Exit Sub
End If
Combo1(0).Clear
While cust_names.EOF <> True
Combo1(0).AddItem cust_names.Fields(0).Value
cust_names.MoveNext
Wend
End Sub
Public Sub GETDATA()
If rs_data.State <> adStateClosed Then
rs_data.Close
End If
rs_data.CursorLocation = adUseClient
rs_data.Open "select * from Sales_master where Party_name='" & Combo1(0).Text & "' and Invoice_no='" & Combo1(1).Text & "'", db, adOpenKeyset, adLockOptimistic
Set DataGrid1.DataSource = rs_data
End Sub
Private Sub Form_Unload(Cancel As Integer)
On Error Resume Next
cust_names.Close
rs_data.Close
Exit Sub
End Sub
Private Sub LaVolpeButton1_Click()
Dim CHECK_SALES_TYPE As New ADODB.Recordset
CHECK_SALES_TYPE.Open "SELECT * FROM Sales_master WHERE Party_name='" & Combo1(0).Text & "' AND Invoice_no='" & Combo1(1).Text & "' AND Item_type='Internet Connection'", db, adOpenKeyset, adLockOptimistic
If CHECK_SALES_TYPE.RecordCount > 0 Then
MsgBox "This Sales Bill is of Internet Connection Sale ..." & vbCrLf & "If you want to change Intetnet Connection Bill then use Modify -> Internet Connection Sale Menu ...", vbInformation, "Internet Connection Sales can not be Modified here ..."
CHECK_SALES_TYPE.Close
Exit Sub
End If
Dim CR_UPDATE As New ADODB.Recordset
CR_UPDATE.Open "SELECT * FROM CRITICAL_SALES_DATA", db, adOpenKeyset, adLockOptimistic
While CR_UPDATE.EOF <> True
CR_UPDATE.Delete
CR_UPDATE.MoveNext
Wend
rs_data.Requery
Dim UPDATA_CUR_RECORD As New ADODB.Recordset
UPDATA_CUR_RECORD.Open "select * from SYS_CURRENT_SALES_ITEMS", db, adOpenKeyset, adLockOptimistic
While UPDATA_CUR_RECORD.EOF <> True
UPDATA_CUR_RECORD.Delete
UPDATA_CUR_RECORD.MoveNext
Wend
While rs_data.EOF <> True
CR_UPDATE.AddNew
For i = 0 To 11
CR_UPDATE.Fields(i).Value = rs_data.Fields(i).Value
Next
CR_UPDATE.Update
rs_data.MoveNext
Wend
CR_UPDATE.Requery
While CR_UPDATE.EOF <> True
UPDATA_CUR_RECORD.AddNew
UPDATA_CUR_RECORD.Fields(0).Value = CR_UPDATE.Fields(5).Value
UPDATA_CUR_RECORD.Fields(1).Value = CR_UPDATE.Fields(6).Value
UPDATA_CUR_RECORD.Fields(2).Value = CR_UPDATE.Fields(7).Value
UPDATA_CUR_RECORD.Fields(3).Value = VAL(CR_UPDATE.Fields(6).Value) * VAL(CR_UPDATE.Fields(7).Value)
UPDATA_CUR_RECORD.Fields(4).Value = CR_UPDATE.Fields(4).Value
UPDATA_CUR_RECORD.Fields(5).Value = CR_UPDATE.Fields(9).Value
UPDATA_CUR_RECORD.Fields(6).Value = CR_UPDATE.Fields(8).Value
UPDATA_CUR_RECORD.Fields(7).Value = CR_UPDATE.Fields(10).Value
UPDATA_CUR_RECORD.Fields(8).Value = CR_UPDATE.Fields(11).Value
UPDATA_CUR_RECORD.Update
CR_UPDATE.MoveNext
Wend
Dim ITEM_DESC As New ADODB.Recordset
ITEM_DESC.Open "SELECT * FROM sales_item_description WHERE invoice_number='" & Combo1(1).Text & "'", db, adOpenKeyset, adLockOptimistic
Dim CR_ITEM As New ADODB.Recordset
CR_ITEM.Open "SELECT * FROM CRITICAL_SALES_DESC", db, adOpenKeyset, adLockOptimistic
While CR_ITEM.EOF <> True
CR_ITEM.Delete
CR_ITEM.MoveNext
Wend
While ITEM_DESC.EOF <> True
CR_ITEM.AddNew
CR_ITEM.Fields(0).Value = ITEM_DESC.Fields(0).Value
CR_ITEM.Fields(1).Value = ITEM_DESC.Fields(1).Value
CR_ITEM.Update
ITEM_DESC.MoveNext
Wend
ITEM_DESC.Requery
While ITEM_DESC.EOF <> True
ITEM_DESC.Delete
ITEM_DESC.MoveNext
Wend
CR_UPDATE.Requery
Dim check_sys As New ADODB.Recordset
check_sys.Open "select * from INVOICE_NUMBER_SYSTEM_ID WHERE INVOICE_NUMBER='" & Combo1(1).Text & "'", db, adOpenKeyset, adLockOptimistic
If check_sys.RecordCount > 0 Then
FRM_SALES_UPDATE_FORM.SALE_TYPE = "SYSTEM"
FRM_SALES_UPDATE_FORM.SYSTEM_QTY = check_sys.RecordCount
While check_sys.EOF <> True
db.Execute "DELETE FROM Customer_System_datail WHERE SYSTEM_ID='" & check_sys.Fields(0).Value & "'"
check_sys.MoveNext
Wend
End If
CR_UPDATE.Requery
Dim UPDATE_STOCK As New ADODB.Recordset
While CR_UPDATE.EOF <> True
UPDATE_STOCK.Open "SELECT * FROM AVAILABLE_PURCHASED_STOCK WHERE Item_type='" & CR_UPDATE.Fields(4).Value & "' AND Item_name='" & CR_UPDATE.Fields(5).Value & "' AND Invoice_no='" & CR_UPDATE.Fields(8).Value & "' AND Party_name='" & CR_UPDATE.Fields(9).Value & "'", db, adOpenKeyset, adLockOptimistic
If UPDATE_STOCK.RecordCount > 0 Then
UPDATE_STOCK.Fields(5).Value = VAL(UPDATE_STOCK.Fields(5).Value) + VAL(CR_UPDATE.Fields(6).Value)
UPDATE_STOCK.Fields(6).Value = VAL(CR_UPDATE.Fields(11).Value)
UPDATE_STOCK.Fields(7).Value = VAL(UPDATE_STOCK.Fields(5).Value) * VAL(UPDATE_STOCK.Fields(6).Value)
UPDATE_STOCK.Update
Else
UPDATE_STOCK.AddNew
UPDATE_STOCK.Fields(0).Value = CR_UPDATE.Fields(8).Value
UPDATE_STOCK.Fields(1).Value = CR_UPDATE.Fields(9).Value
UPDATE_STOCK.Fields(2).Value = CR_UPDATE.Fields(10).Value
UPDATE_STOCK.Fields(3).Value = CR_UPDATE.Fields(4).Value
UPDATE_STOCK.Fields(4).Value = CR_UPDATE.Fields(5).Value
UPDATE_STOCK.Fields(5).Value = CR_UPDATE.Fields(6).Value
UPDATE_STOCK.Fields(6).Value = CR_UPDATE.Fields(11).Value
UPDATE_STOCK.Fields(7).Value = VAL(CR_UPDATE.Fields(5).Value) * VAL(UPDATE_STOCK.Fields(6).Value)
UPDATE_STOCK.Update
End If
CR_UPDATE.MoveNext
UPDATE_STOCK.Close
Wend
db.Execute "DELETE FROM Sales_master WHERE Invoice_no='" & Combo1(1).Text & "'"
db.Execute "DELETE FROM DATE_PROFIT WHERE INVOICE_NUMBER='" & Combo1(1).Text & "'"
Dim del_unpaid As New ADODB.Recordset
del_unpaid.Open "select * from AMT_UNPAID_REMIND where PARTY_NAME='" & Combo1(0).Text & "' and INVOICE_NO='" & Combo1(1).Text & "' AND TRAN_TYPE='SALES'", db, adOpenKeyset, adLockOptimistic
If del_unpaid.RecordCount > 0 Then
del_unpaid.Delete
End If
del_unpaid.Close
CR_UPDATE.Requery
While CR_UPDATE.EOF <> True
Dim R_ITEM_MASTER As New ADODB.Recordset
R_ITEM_MASTER.Open "SELECT Qty FROM Item_master WHERE Item_name='" & CR_UPDATE.Fields(5).Value & "' AND Itemtype='" & CR_UPDATE.Fields(4).Value & "'", db, adOpenKeyset, adLockOptimistic
R_ITEM_MASTER.Fields(0).Value = VAL(R_ITEM_MASTER.Fields(0).Value) + VAL(CR_UPDATE.Fields(6).Value)
R_ITEM_MASTER.Update
CR_UPDATE.MoveNext
R_ITEM_MASTER.Close
Wend
db.Execute "DELETE FROM EXPENSE WHERE INVOICE_NO='" & Combo1(1).Text & "' AND EXPENSE_TYPE='Discounted Amount(Sales)'"
db.Execute "DELETE FROM INCOME WHERE INVOICE_NUMBER='" & Combo1(1).Text & "' AND INCOME_TYPE='Discounted Amount(Sales)'"
CR_UPDATE.Requery
CR_ITEM.Requery
FRM_SALES_UPDATE_FORM.Text1(0).Text = Combo1(1).Text
FRM_SALES_UPDATE_FORM.Combo1.Text = Combo1(0).Text
FRM_SALES_UPDATE_FORM.DTPicker1.Value = Format(Text1.Text, "dd-MMM-yyyy")
FRM_SALES_UPDATE_FORM.Text1(4).Text = CR_UPDATE.Fields(1).Value
If CR_ITEM.RecordCount > 0 Then
If Len(CR_ITEM.Fields(1).Value) > 0 Then
FRM_SALES_UPDATE_FORM.Text2.Text = CR_ITEM.Fields(1).Value
End If
End If
Unload Me
FRM_SALES_UPDATE_FORM.Show
End Sub
Private Sub LaVolpeButton2_Click()
Dim CHECK_SALES_TYPE As New ADODB.Recordset
CHECK_SALES_TYPE.Open "SELECT * FROM Sales_master WHERE Party_name='" & Combo1(0).Text & "' AND Invoice_no='" & Combo1(1).Text & "' AND Item_type='Internet Connection'", db, adOpenKeyset, adLockOptimistic
If CHECK_SALES_TYPE.RecordCount > 0 Then
MsgBox "This Sales Bill is of Internet Connection Sale ..." & vbCrLf & "If you want to Delete Intetnet Connection Bill then use Modify -> Internet Connection Sale Menu ...", vbInformation, "Internet Connection Sales can not be Deleted here ..."
CHECK_SALES_TYPE.Close
Exit Sub
End If
Dim CR_UPDATE As New ADODB.Recordset
CR_UPDATE.Open "SELECT * FROM CRITICAL_SALES_DATA", db, adOpenKeyset, adLockOptimistic
While CR_UPDATE.EOF <> True
CR_UPDATE.Delete
CR_UPDATE.MoveNext
Wend
rs_data.Requery
Dim UPDATA_CUR_RECORD As New ADODB.Recordset
UPDATA_CUR_RECORD.Open "select * from SYS_CURRENT_SALES_ITEMS", db, adOpenKeyset, adLockOptimistic
While UPDATA_CUR_RECORD.EOF <> True
UPDATA_CUR_RECORD.Delete
UPDATA_CUR_RECORD.MoveNext
Wend
While rs_data.EOF <> True
CR_UPDATE.AddNew
For i = 0 To 11
CR_UPDATE.Fields(i).Value = rs_data.Fields(i).Value
Next
CR_UPDATE.Update
rs_data.MoveNext
Wend
CR_UPDATE.Requery
While CR_UPDATE.EOF <> True
UPDATA_CUR_RECORD.AddNew
UPDATA_CUR_RECORD.Fields(0).Value = CR_UPDATE.Fields(5).Value
UPDATA_CUR_RECORD.Fields(1).Value = CR_UPDATE.Fields(6).Value
UPDATA_CUR_RECORD.Fields(2).Value = CR_UPDATE.Fields(7).Value
UPDATA_CUR_RECORD.Fields(3).Value = VAL(CR_UPDATE.Fields(6).Value) * VAL(CR_UPDATE.Fields(7).Value)
UPDATA_CUR_RECORD.Fields(4).Value = CR_UPDATE.Fields(4).Value
UPDATA_CUR_RECORD.Fields(5).Value = CR_UPDATE.Fields(9).Value
UPDATA_CUR_RECORD.Fields(6).Value = CR_UPDATE.Fields(8).Value
UPDATA_CUR_RECORD.Fields(7).Value = CR_UPDATE.Fields(10).Value
UPDATA_CUR_RECORD.Fields(8).Value = CR_UPDATE.Fields(11).Value
UPDATA_CUR_RECORD.Update
CR_UPDATE.MoveNext
Wend
Dim ITEM_DESC As New ADODB.Recordset
ITEM_DESC.Open "SELECT * FROM sales_item_description WHERE invoice_number='" & Combo1(1).Text & "'", db, adOpenKeyset, adLockOptimistic
Dim CR_ITEM As New ADODB.Recordset
CR_ITEM.Open "SELECT * FROM CRITICAL_SALES_DESC", db, adOpenKeyset, adLockOptimistic
While CR_ITEM.EOF <> True
CR_ITEM.Delete
CR_ITEM.MoveNext
Wend
While ITEM_DESC.EOF <> True
CR_ITEM.AddNew
CR_ITEM.Fields(0).Value = ITEM_DESC.Fields(0).Value
CR_ITEM.Fields(1).Value = ITEM_DESC.Fields(1).Value
CR_ITEM.Update
ITEM_DESC.MoveNext
Wend
ITEM_DESC.Requery
While ITEM_DESC.EOF <> True
ITEM_DESC.Delete
ITEM_DESC.MoveNext
Wend
CR_UPDATE.Requery
Dim check_sys As New ADODB.Recordset
check_sys.Open "select * from INVOICE_NUMBER_SYSTEM_ID WHERE INVOICE_NUMBER='" & Combo1(1).Text & "'", db, adOpenKeyset, adLockOptimistic
If check_sys.RecordCount > 0 Then
FRM_SALES_UPDATE_FORM.SALE_TYPE = "SYSTEM"
FRM_SALES_UPDATE_FORM.SYSTEM_QTY = check_sys.RecordCount
While check_sys.EOF <> True
db.Execute "DELETE FROM Customer_System_datail WHERE SYSTEM_ID='" & check_sys.Fields(0).Value & "'"
check_sys.MoveNext
Wend
End If
CR_UPDATE.Requery
Dim UPDATE_STOCK As New ADODB.Recordset
While CR_UPDATE.EOF <> True
UPDATE_STOCK.Open "SELECT * FROM AVAILABLE_PURCHASED_STOCK WHERE Item_type='" & CR_UPDATE.Fields(4).Value & "' AND Item_name='" & CR_UPDATE.Fields(5).Value & "' AND Invoice_no='" & CR_UPDATE.Fields(8).Value & "' AND Party_name='" & CR_UPDATE.Fields(9).Value & "'", db, adOpenKeyset, adLockOptimistic
If UPDATE_STOCK.RecordCount > 0 Then
UPDATE_STOCK.Fields(5).Value = VAL(UPDATE_STOCK.Fields(5).Value) + VAL(CR_UPDATE.Fields(6).Value)
UPDATE_STOCK.Fields(6).Value = VAL(CR_UPDATE.Fields(11).Value)
UPDATE_STOCK.Fields(7).Value = VAL(UPDATE_STOCK.Fields(5).Value) * VAL(UPDATE_STOCK.Fields(6).Value)
UPDATE_STOCK.Update
Else
UPDATE_STOCK.AddNew
UPDATE_STOCK.Fields(0).Value = CR_UPDATE.Fields(8).Value
UPDATE_STOCK.Fields(1).Value = CR_UPDATE.Fields(9).Value
UPDATE_STOCK.Fields(2).Value = CR_UPDATE.Fields(10).Value
UPDATE_STOCK.Fields(3).Value = CR_UPDATE.Fields(4).Value
UPDATE_STOCK.Fields(4).Value = CR_UPDATE.Fields(5).Value
UPDATE_STOCK.Fields(5).Value = CR_UPDATE.Fields(6).Value
UPDATE_STOCK.Fields(6).Value = CR_UPDATE.Fields(11).Value
UPDATE_STOCK.Fields(7).Value = VAL(CR_UPDATE.Fields(5).Value) * VAL(UPDATE_STOCK.Fields(6).Value)
UPDATE_STOCK.Update
End If
CR_UPDATE.MoveNext
UPDATE_STOCK.Close
Wend
db.Execute "DELETE FROM Sales_master WHERE Invoice_no='" & Combo1(1).Text & "'"
db.Execute "DELETE FROM DATE_PROFIT WHERE INVOICE_NUMBER='" & Combo1(1).Text & "'"
Dim del_unpaid As New ADODB.Recordset
del_unpaid.Open "select * from AMT_UNPAID_REMIND where PARTY_NAME='" & Combo1(0).Text & "' and INVOICE_NO='" & Combo1(1).Text & "' AND TRAN_TYPE='SALES'", db, adOpenKeyset, adLockOptimistic
If del_unpaid.RecordCount > 0 Then
del_unpaid.Delete
End If
del_unpaid.Close
CR_UPDATE.Requery
While CR_UPDATE.EOF <> True
Dim R_ITEM_MASTER As New ADODB.Recordset
R_ITEM_MASTER.Open "SELECT Qty FROM Item_master WHERE Item_name='" & CR_UPDATE.Fields(5).Value & "' AND Itemtype='" & CR_UPDATE.Fields(4).Value & "'", db, adOpenKeyset, adLockOptimistic
R_ITEM_MASTER.Fields(0).Value = VAL(R_ITEM_MASTER.Fields(0).Value) + VAL(CR_UPDATE.Fields(6).Value)
R_ITEM_MASTER.Update
CR_UPDATE.MoveNext
R_ITEM_MASTER.Close
Wend
db.Execute "DELETE FROM EXPENSE WHERE INVOICE_NO='" & Combo1(1).Text & "' AND EXPENSE_TYPE='Discounted Amount(Sales)'"
db.Execute "DELETE FROM INCOME WHERE INVOICE_NUMBER='" & Combo1(1).Text & "' AND INCOME_TYPE='Discounted Amount(Sales)'"
MsgBox "Sales Bill Deleted Successfully...", vbInformation, "Invoice Deleted ..."
Unload Me
End Sub
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?