use "dev:code[SKUItem.vx]"
|
|
unit vbusiness.vpage
|
[
|
SKUItemImport is extend SKUItem;
|
about SKUItemImport
|
[
|
field:
|
xdwgrid dw_list;
|
treeview tv_1;
|
xdwtable dw_maint;
|
method:
|
[
|
|
xstring jxParam(xstring p, xstring n)
|
{
|
if(p != L"")
|
{
|
|
int i = 1;
|
while (p.find(L"=",0)>0)
|
{
|
xstring name = p.mid(0, p.find(L"=",0));
|
xstring value = p.mid(p.find(L"=",0) + 1, p.find(L"=",0) - 1);
|
return ""+value;
|
i += 1;
|
}
|
}
|
return "";
|
}
|
int OnSelectAll()
|
{
|
if(this.dw_list.GetRowCount() > 0 )
|
this.dw_list.SelectRow(1,true);
|
|
this.dw_list.SelectRow(0,true);
|
this.dw_list.Redraw();
|
return 1;
|
}
|
|
int OnSelectNo()
|
{
|
this.dw_list.SelectRow(0,false);
|
this.dw_list.Redraw();
|
return 1;
|
}
|
|
int OnOk()
|
{
|
|
xdwtable dw = new xdwtable;
|
dw.setNativePointer(dw_maint.FindDwTable(L"Item",0));
|
|
int row = SKUItem::dw_list.GetNextSelectRow(1);
|
if (row<1)
|
{
|
alert(L"ÇëÑ¡ÔñÏîÄ¿Ãû³Æ!");
|
return 1;
|
}
|
|
while (row>0)
|
{
|
|
msxml::IXMLDOMElement e =SKUItem::dw_list.GetRowElement(row);
|
xstring ItemName = e.selectSingleNode(L"ItemName").text+L"";
|
//trace(ItemName);
|
if(dw.GetItemString(1,L"ItemName")==L"")
|
{
|
dw.SetItemString(1,L"SeqNo",L"1");
|
dw.ItemChangeTo(1,L"ItemName",ItemName);
|
}
|
else
|
{
|
int n=dw.InsertRow(0);
|
dw.SetItemString(n,L"SeqNo",n.ToString());
|
dw.ItemChangeTo(n,L"ItemName",ItemName);
|
}
|
row = SKUItem::dw_list.GetNextSelectRow(row +1);
|
}
|
CloseWindow();
|
return 1;
|
}
|
|
int OnCancel()
|
{
|
CloseWindow();
|
return 1;
|
}
|
int OnDoubleClicked(ref TNotifyEvent evt,int p)
|
{
|
OnOk();
|
return 1;
|
}
|
|
int OnCmdDispatch(xstring comdid)
|
{
|
if (comdid==L"SelectAll") OnSelectAll();
|
else if (comdid==L"SelectNo") OnSelectNo();
|
else if (comdid==L"cb_import") OnOk();
|
else if (comdid==L"cb_close") OnCancel();
|
//else if (comdid==L"query") GridSearch();
|
return 0;
|
}
|
|
int OnXCommand(ref TXCommandEvent evt,int p)
|
{
|
return OnCmdDispatch(evt.pStrID);
|
}
|
|
int onload()
|
{
|
if (GetParam())
|
{
|
xaserverarg arg1=GetParam();
|
dw_maint = new xdwtable;
|
dw_maint.setNativePointer(arg1.GetArgString(L"dw_maint").toInt());
|
}
|
SKUItem::onload();
|
SKUItem::dw_list.SetSelectionMode(3); //3
|
SKUItem::dw_list.SetReadOnly(true);
|
AttachEvent(L"WM_XCOMMAND",OnXCommand);
|
AttachEvent(L"dw_list",L"DWV_DOUBLECLICKED",OnDoubleClicked);//ÐÐË«»÷
|
}
|
]
|
]
|
]
|