日志使用
bwf_add_slog('销售支持', '成品替代--批量审核', g_username, ls_rep_id)
调用延迟函数 sleep(3) 的API
Function Long Sleep(Long ms) Library "kernel32.dll" //可以直接复制在 Local External Functions 中,然后在窗口中进行调用 sleep(3)
(PB中一些调用API的简单使用 http://blog.csdn.net/davinciteam/article/details/8548491 PB中的API )
ls_column = this.GetObjectAtPointer() // 得到鼠标按下位置的对象名
右击事件的简单使用(m_menuitem是一个存在的menu,在其item的点击事件中写入了:message.stringparm = text
w_third是其中的窗口)
m_menuitem m_1,m_t[]
string ls_menu[]
window lw
integer h
ls_menu[1] = '取消'
ls_menu[2] = '帮助'
m_1 = create m_menuitem
for h = 1 to upperbound(ls_menu)
m_t[h] = create m_menuitem
m_t[h].m_item.text = ls_menu[h]
m_1.item[h] = m_t[h].m_item
next
lw = w_third
m_1.popmenu(lw.pointerx() , lw.pointery())
choose case message.stringparm
case '取消'
Closewithreturn(parent,'')
case '帮助'
messagebox("帮助","单击选中日期,双击选择日期!")
End choose
PB中获取电脑名称(API)
FUNCTION boolean GetComputerNameA(ref string cname,ref long nbuf) LIBRARY "kernel32.dll"
String ls_computername=space(512)
Long ll_buffer=512
Getcomputernamea(ls_computername,ll_buffer) //Return ls_computername
cfc_dw_transfer(dw_1, 1, dw_2, ii_editrow) PB中将dw_1中数据复制给dw_2对应列中,两个datawindow的列可以不相同
dw_1.RowsCopy(dw_1.GetRow(), dw_1.RowCount(), Primary!, dwc, 1, Primary!) 两datawindow对应列要相同
datawindow中的字段是否显示,在代码中的写法:dw_1.object.cp_sn.visible = 0
datawindow中的字段通过另外一个窗口的datawindow中的字段的赋值:dw_1.Object.mer_sn.Object.Data = w_order_list.dw_3.Object.Data
执行sql语句:
ls_sql="up_BOM_CopyInf '" + ls_merno + "','" + ls_New_merno + "','" + ls_year2 + "','" + gs_name + "','"+ls_listno+"','"+ls_cat_id+"'"
EXECUTE IMMEDIATE :ls_sql;