Hi, я создавал dataTable, и испытывал вопрос, и его diaplys результат. Если вы видите Кодего я, то прикрепитесь ниже: When будет шаг в течении Кодего, оно исполняет заявление sql, заполняет datatable, но после линий 81-82: nBFBal = nBFBal + количество myRow.Item («количества») .ToString () = myRow.Item («количество») .ToString () + myRow («PaidAmont») .ToString (), оно останавливает пойти более далее и exeutes «окончательно» заявление. Все идеи идет неправильно здесь?
class= " ясное " >
> " codeSnippet " class=
class= " lineNumbers "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
|
class=
class= btnCreateStatement_Click " id= " codeSnippet944473 Private Sub (прислужник ByVal как System.Object, ByVal e как System.EventArgs) регулирует btnCreateStatement.Click
Тусклое myConn как новое MySqlConnection
Тусклое myComm как новое MySqlCommand
Тусклое myAdapter как новое MySqlDataAdapter
Тусклое myData как новое DataTable
Тусклое strSQL как шнур
Тусклое sEndDate как шнур
Тусклое CustomerRef как шнур
Тусклое течение как двойник
Затемните 30 как двойник
Затемните 60 как двойник
Затемните 90 как двойник
Затемните onetwenty как двойник
Затемните количество как двойник
Затемните unallocated как двойник
Затемните nBFBal как двойник
Затемните nCFBal как двойник
CustomerRef = CustomerRefComboBox.Text
sEndDate = форма (DateTimePicker2.Value, «yyyy-MM-dd»)
strSQL = «ОТБОРНОЕ tr.TransID, tr. Дата, trt. Категория, trt. Descr, cz.CustomerRef, tr. Количество, СУММА (tr. Количество) КАК TotalGroup, tr. Примечания,» & _
«PERIOD_DIFF (CONCAT (ГОД («» & sEndDate & «"), ЕСЛИ (МЕСЯЦ (««& sEndDate &» ")<10, «0», ''), МЕСЯЦ («» & sEndDate & «")), то, CONCAT (ГОД (tr. Дата), ЕСЛИ (МЕСЯЦ, то (tr. Дата) <10, «0», ''), МЕСЯЦ (tr. Дата))) КАК дни,» & _
«IFNULL ((отборная СУММА (AllocationAmount) ОТ ОГО T1 трудыов СОЕДИНЯЕТ TransactionAllocations TA НА TA.TransactionID = T1.TransID» & _
«О СОЕДИНИТЕ T2 трудыов НА T2.TransID = TA.TransactionID_Allocation ГДЕ (tr.TransID = T1.TransID) И T2.CustomerID = «3») * -1, 0) КАК TotalAgainstCustomer,» & _
«IFNULL ((отборная СУММА (AllocationAmount) ОТ ОГО T1 трудыов СОЕДИНЯЕТ TransactionAllocations TA НА TA.TransactionID_Allocation = T1.TransID» & _
«ГДЕ tr.TransID = T1.TransID) * -1, 0) КАК PaidAmount» & _
«ОТ trt клиентов cz, трудыов tr, TransTypes» & _
«ГДЕ (tr.CustomerID = cz.CustomerID И cz.CustomerRef = «» & CustomerRef & «» И tr.TransTypeID = trt.TransTypeID) «& _
«И (Date<='" & sEndDate tr. & «')» & _
«И НЕ tr.TransTypeID В («ДЕБИТ РЕШЕНИЯ», «КРЕДИТ РЕШЕНИЯ ")» & _
«ГРУППА IFNULL (LinkTo, TransID)» & _
«ИМЕЮЩ TotalGroup <>0» & _
«ЗАКАЗ tr. Дата, ПРЕДЕЛ 0 tr.TransID, 30»
myConn = GetConnection ()
Попытка
myConn.Open ()
Попытка
myComm.Connection = myConn
myComm.CommandText = strSQL
myAdapter.SelectCommand = myComm
myAdapter.Fill (myData)
DataGridView1.DataSource = myData
Тусклое myRow как DataRow
Для каждого myRow в myData.Rows
Тусклое myCol как DataColumn
Для каждого myCol в myData.Columns
nBFBal = 0
Если Convert.ToDateTime, то (myRow.Item («дата»)) >= DateTimePicker1.Value после этого
Если <> 0 myRow.Item («TotalAgainstCustomer») .ToString () после этого
nBFBal = nBFBal + Convert.ToDouble (myRow.Item («количество») .ToString ())
Еще
nBFBal = nBFBal + myRow.Item («количество») .ToString ()
количество = myRow.Item («количество») .ToString () + myRow («PaidAmont») .ToString ()
Закончитесь если
Если <= 0 myRow.Item («дней») .ToString () после этого
течение = течение + количество
ElseIf myRow.Item («дни») .ToString () = 1 после этого
30 = 30 + количество
ElseIf myRow.Item («дни») .ToString = 2 после этого
60 = 60 + количество
ElseIf myRow.Item («дни») .ToString () = 3 после этого
90 = 90 + количество
ElseIf myRow.Item («дни») .ToString () = 4 после этого
onetwenty = onetwenty = количество
Закончитесь если
Закончитесь если
Затем
nCFBal = nBFBal
Если myRow.Item («дата») < DateTimePicker2.Value после этого
Globals.Sheet64.TransactionDate.Value = myRow.Item («дата») .ToString
Globals.Sheet64.TransactionType.Value = myRow.Item («категория») .ToString
Globals.Sheet64.TransDescription.Value = myRow.Item («Descr») .ToString
Globals.Sheet64.TransDocument.Value = myRow.Item («примечания») .ToString
Если <> 0 myRow.Item («TotalAgainstCustomer») после этого
Globals.Sheet64.stm_amount.Value = myRow.Item («количество») .ToString
nCFBal = nCFBal + Convert.ToDouble (myRow.Item («количество») .ToString ())
количество = Convert.ToDouble (myRow.Item («количество») .ToString ()) - Convert.ToDouble (myRow.Item («TotalAgainstCustomer») .ToString ())
Еще
Globals.Sheet64.stm_amount.Value = myRow.Item («количество») .ToString
nCFBal = nCFBal + Convert.ToDouble (myRow.Item («количество») .ToString ())
количество = Convert.ToDouble (myRow.Item («количество») .ToString ()) - Convert.ToDouble (myRow.Item («PaidAmount») .ToString ())
Закончитесь если
Закончитесь если
Затем
myError задвижки как MySqlException
MessageBox.Show («было чтение ошибки от базы данных: » & myError.Message)
Попытка конца
Затем
myError задвижки как MySqlException
MessageBox.Show («ошибка соединяясь к базе данных: » & myError.Message)
Окончательно
Если <> ConnectionState.Closed myConn.State после этого
myConn.Close ()
Закончитесь если
Закончите попытку
Закончите подводную лодку
|
class= " ясное " >
> " codeSnippet " class=
class= " lineNumbers "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
|
class=
class= btnCreateStatement_Click " id= " codeSnippet944483 Private Sub (прислужник ByVal как System.Object, ByVal e как System.EventArgs) регулирует btnCreateStatement.Click
Тусклое myConn как новое MySqlConnection
Тусклое myComm как новое MySqlCommand
Тусклое myAdapter как новое MySqlDataAdapter
Тусклое myData как новое DataTable
Тусклое strSQL как шнур
Тусклое sEndDate как шнур
Тусклое CustomerRef как шнур
Тусклое течение как двойник
Затемните 30 как двойник
Затемните 60 как двойник
Затемните 90 как двойник
Затемните onetwenty как двойник
Затемните количество как двойник
Затемните unallocated как двойник
Затемните nBFBal как двойник
Затемните nCFBal как двойник
CustomerRef = CustomerRefComboBox.Text
sEndDate = форма (DateTimePicker2.Value, «yyyy-MM-dd»)
strSQL = «ОТБОРНОЕ tr.TransID, tr. Дата, trt. Категория, trt. Descr, cz.CustomerRef, tr. Количество, СУММА (tr. Количество) КАК TotalGroup, tr. Примечания,» & _
«PERIOD_DIFF (CONCAT (ГОД («» & sEndDate & «"), ЕСЛИ (МЕСЯЦ (««& sEndDate &» ")<10, «0», ''), МЕСЯЦ («» & sEndDate & «")), то, CONCAT (ГОД (tr. Дата), ЕСЛИ (МЕСЯЦ, то (tr. Дата) <10, «0», ''), МЕСЯЦ (tr. Дата))) КАК дни,» & _
«IFNULL ((отборная СУММА (AllocationAmount) ОТ ОГО T1 трудыов СОЕДИНЯЕТ TransactionAllocations TA НА TA.TransactionID = T1.TransID» & _
«О СОЕДИНИТЕ T2 трудыов НА T2.TransID = TA.TransactionID_Allocation ГДЕ (tr.TransID = T1.TransID) И T2.CustomerID = «3») * -1, 0) КАК TotalAgainstCustomer,» & _
«IFNULL ((отборная СУММА (AllocationAmount) ОТ ОГО T1 трудыов СОЕДИНЯЕТ TransactionAllocations TA НА TA.TransactionID_Allocation = T1.TransID» & _
«ГДЕ tr.TransID = T1.TransID) * -1, 0) КАК PaidAmount» & _
«ОТ trt клиентов cz, трудыов tr, TransTypes» & _
«ГДЕ (tr.CustomerID = cz.CustomerID И cz.CustomerRef = «» & CustomerRef & «» И tr.TransTypeID = trt.TransTypeID) «& _
«И (Date<='" & sEndDate tr. & «')» & _
«И НЕ tr.TransTypeID В («ДЕБИТ РЕШЕНИЯ», «КРЕДИТ РЕШЕНИЯ ")» & _
«ГРУППА IFNULL (LinkTo, TransID)» & _
«ИМЕЮЩ TotalGroup <>0» & _
«ЗАКАЗ tr. Дата, ПРЕДЕЛ 0 tr.TransID, 30»
myConn = GetConnection ()
Попытка
myConn.Open ()
Попытка
myComm.Connection = myConn
myComm.CommandText = strSQL
myAdapter.SelectCommand = myComm
myAdapter.Fill (myData)
DataGridView1.DataSource = myData
Тусклое myRow как DataRow
Для каждого myRow в myData.Rows
Тусклое myCol как DataColumn
Для каждого myCol в myData.Columns
nBFBal = 0
Если Convert.ToDateTime, то (myRow.Item («дата»)) >= DateTimePicker1.Value после этого
Если <> 0 myRow.Item («TotalAgainstCustomer») .ToString () после этого
nBFBal = nBFBal + Convert.ToDouble (myRow.Item («количество») .ToString ())
Еще
nBFBal = nBFBal + myRow.Item («количество») .ToString ()
количество = myRow.Item («количество») .ToString () + myRow («PaidAmont») .ToString ()
Закончитесь если
Если <= 0 myRow.Item («дней») .ToString () после этого
течение = течение + количество
ElseIf myRow.Item («дни») .ToString () = 1 после этого
30 = 30 + количество
ElseIf myRow.Item («дни») .ToString = 2 после этого
60 = 60 + количество
ElseIf myRow.Item («дни») .ToString () = 3 после этого
90 = 90 + количество
ElseIf myRow.Item («дни») .ToString () = 4 после этого
onetwenty = onetwenty = количество
Закончитесь если
Закончитесь если
Затем
nCFBal = nBFBal
Если myRow.Item («дата») < DateTimePicker2.Value после этого
Globals.Sheet64.TransactionDate.Value = myRow.Item («дата») .ToString
Globals.Sheet64.TransactionType.Value = myRow.Item («категория») .ToString
Globals.Sheet64.TransDescription.Value = myRow.Item («Descr») .ToString
Globals.Sheet64.TransDocument.Value = myRow.Item («примечания») .ToString
Если <> 0 myRow.Item («TotalAgainstCustomer») после этого
Globals.Sheet64.stm_amount.Value = myRow.Item («количество») .ToString
nCFBal = nCFBal + Convert.ToDouble (myRow.Item («количество») .ToString ())
количество = Convert.ToDouble (myRow.Item («количество») .ToString ()) - Convert.ToDouble (myRow.Item («TotalAgainstCustomer») .ToString ())
Еще
Globals.Sheet64.stm_amount.Value = myRow.Item («количество») .ToString
nCFBal = nCFBal + Convert.ToDouble (myRow.Item («количество») .ToString ())
количество = Convert.ToDouble (myRow.Item («количество») .ToString ()) - Convert.ToDouble (myRow.Item («PaidAmount») .ToString ())
Закончитесь если
Закончитесь если
Затем
myError задвижки как MySqlException
MessageBox.Show («было чтение ошибки от базы данных: » & myError.Message)
Попытка конца
Затем
myError задвижки как MySqlException
MessageBox.Show («ошибка соединяясь к базе данных: » & myError.Message)
Окончательно
Если <> ConnectionState.Closed myConn.State после этого
myConn.Close ()
Закончитесь если
Закончите попытку
Закончите подводную лодку
|
class=
|