我有CheckBoxList
这样的人。 (有客户名称)
这些是客户名称,每个客户都有一个客户编号(Unique
- Primary Key
)
表:S_TEKLIF
MUS_K_ISIM
代表客户名称
HESAP_NO
代表客户编号
我有Send Button
和Gridview
。
当我单击发送按钮时,
在我的Gridview
中,我只想运行此SQL
;
SELECT A.HESAP_NO, A.TEKLIF_NO1 || '/' || A.TEKLIF_NO2 AS TEKLIF, A.MUS_K_ISIM,
B.MARKA, C.SASI_NO, C.SASI_DURUM, D.TAS_MAR, RISK_SASI(A.TEKLIF_NO1, A.TEKLIF_NO2, C.SASI_NO) AS RISK,
MV_SASI(A.TEKLIF_NO1, A.TEKLIF_NO2, C.SASI_NO, SYSDATE) AS MV
FROM S_TEKLIF A, S_URUN B, S_URUN_DETAY C, KOC_KTMAR_PR D
WHERE A.TEKLIF_NO1 || A.TEKLIF_NO2 = B.TEKLIF_NO1 || B.TEKLIF_NO2
AND A.TEKLIF_NO1 || A.TEKLIF_NO2 = C.TEKLIF_NO1 || C.TEKLIF_NO2
AND B.SIRA_NO = C.URUN_SIRA_NO
AND B.DISTRIBUTOR = D.DIST_KOD
AND B.MARKA = D.MARKA_KOD
AND B.URUN_KOD = D.TAS_KOD
AND A.HESAP_NO IN (
但是你可以看到SQL
的底部,我只想在我的Gridview中显示“我在CheckBoxList中选择了哪些客户”。
我该怎么做?
我的Send_Click()
函数和SQL
中的内容应该是什么?
最诚挚的问候,Soner
答案 0 :(得分:1)
对复选框列表中的每个项目进行评估,并检查项目是否已选中,如果是,则获取该项目的客户ID(您可能将其置于项目的value属性中)。准备以逗号分隔的那些客户ID列表,并将其传递到SQL的IN子句中。所以它就像下面这样。
SELECT A.HESAP_NO, A.TEKLIF_NO1 || '/' || A.TEKLIF_NO2 AS TEKLIF, A.MUS_K_ISIM,
B.MARKA, C.SASI_NO, C.SASI_DURUM, D.TAS_MAR, RISK_SASI(A.TEKLIF_NO1, A.TEKLIF_NO2, C.SASI_NO) AS RISK,
MV_SASI(A.TEKLIF_NO1, A.TEKLIF_NO2, C.SASI_NO, SYSDATE) AS MV
FROM S_TEKLIF A, S_URUN B, S_URUN_DETAY C, KOC_KTMAR_PR D
WHERE A.TEKLIF_NO1 || A.TEKLIF_NO2 = B.TEKLIF_NO1 || B.TEKLIF_NO2
AND A.TEKLIF_NO1 || A.TEKLIF_NO2 = C.TEKLIF_NO1 || C.TEKLIF_NO2
AND B.SIRA_NO = C.URUN_SIRA_NO
AND B.DISTRIBUTOR = D.DIST_KOD
AND B.MARKA = D.MARKA_KOD
AND B.URUN_KOD = D.TAS_KOD
AND A.HESAP_NO IN (12,14,13,18,26)
答案 1 :(得分:1)
我用简单的英文格式发表声明
在按钮点击事件中添加以下代码
protected void mybutton_click()
{
StringBuilder sb = new StringBuilder();
foreach(ListItem item in CustomerListBox.Items)
{
If(item.selected)
{
sb.Append(item.SelectedValue+",");
}
}
FillGridview(sb);
}
private void FillGridview(StringBuilder sb)
{
string s = sb.tostring().remove().lastindexof(",");
//pass this string as param and set it your where condition.
// Get the datatble or collection and bind grid.
}
Select your desired columsn to display
From Your Tables (put joins if required)
Where CustomerNumber IN (@CommaSeparatedAboveString_s);