随手笔记

弹出提示窗口时,点击了'取消'按钮      if MessageBox("提示","是否修改船期日期?",question!,yesno!) = 2 then return

datawindow中设置可以输入      d_row=dw_1.insertrow(0)     dw_1.scrolltorow(d_row)

船期确认中'保存'事件

if idw_1.update() = 1 then 

if g_co_no = '002' then

string ls_sql

ls_sql = "sp_invoice_update_unite '" + ls_inv_no + "'"

execute immediate :ls_sql;

if sqlca.sqlcode <> 0 then

rollback;

messagebox("提示", "更新分票错误!")

return

end if

end if

commit using sqlca;

if uf_sd001_send_to_sap(ls_inv_no,4) = 0 then

messagebox("提示","修改成功!")

end if

closewithreturn(parent ,'1')

else

ls_sqlerrtext = sqlca.sqlerrtext

rollback using sqlca;

messagebox("提示","保存失败:"+ls_sqlerrtext)

end if

PB中的缓冲区    例如  dw_1.SetItemStatus(d_row, 0,  Primary!, NotModified!)

UpperBound (Obtains the upper bound of a dimension of an array.)

pos (Finds one string within another string.)返回的是一个long类型,  Pos(string1,string2{,start} )  返回string1中从start开始查询的包含string2的位置,位置是从start开始查的,但是是实际的位置数.例如:ll_num = pos("abdcdefga","a",5) ll_num得到的是9

mid (Obtains a specified number of characters from a specified position in a string)返回的是一个string类型.  Mid(string,start{,length} ),返回从star开始至字符串最后一个

len(string) 获取一个字符串的长度,返回的是一个long类型(在PB9.0中的汉字长度为2 len('你') = 2 但是 在PB12.0中汉字长度为1 len('你') = 1)

Left(string,n)返回的是一个string类型字符串,是从第一个字符开始返回n个字符

Right(string,n)返回的是一个string类型字符串,是从最后一个字符开始往前计算返回n个字符

Mod(x,y)得到x/y的余数

Round(x,n)把x置为含有n个小数位的decimal数值,例如:Round(9.624, 2)  返回的是9.62

IsNumber(string)返回一个Boolean类型数据,如果string是一个数值的,则是true,否则是false

致富文本框为空

string ls_null

setnull(ls_null)

mle_1.text=ls_null

致datawindow为空 dw_1.retrieve("Nothing")

实例一个UpDate()函数:

rc = dw_1.update()

if rc > 0 then

commit using sqlca;

if sqlca.sqlcode<0 then

messagebox("数据库出错","错误号="+string(sqlca.sqldbcode) + "原因为:" + sqlca.sqlerrtext)

halt close

end if

else

rollback using sqlca;

if sqlca.SQLCode < 0 then

messagebox("数据库出错","错误号=" + string(sqlca.SQLdbcode) + "原因为:" + sqlca.sqlerrtext)

halt close

end if

end if


continue的用法

integer A=0, B=0, Count

FOR Count = 1 to 100

A = A + 1

IF Count > 15 THEN CONTINUE

B = B + 1

NEXT

// Upon completion, a=100 and b=15.

DaysAfter(date1,date2)函数的用法:

This statement returns 4:

DaysAfter(2002-12-20, 2002-12-24)

This statement returns -4:

DaysAfter(2002-12-24, 2002-12-20)

This statement returns 0:

DaysAfter(2003-12-24, 2003-12-24)

This statement returns 5:

DaysAfter(2003-12-29, 2004-01-03)

Move(x,y)函数的使用方法:

objectname.Move(x,y) 相对于父类,把位置移动到了(x,y)处 .  例如:gb_box1.Move(150,200)

拼接paint_no的最小值,'_'和最大值的第五个字母之后的数据作为查询路径

string ls_path

choose case dwo.name

case 'b_open'

if DaysAfter(2017-05-17,date(getitemdatetime(getrow(),'pac_date')))<0 or isnull(getitemdatetime(getrow(),'pac_date')) then

ls_path = "\\s20\Bestway\Packaging(包装)\Final Packaging Assets(最终印刷品资料)\JPG\Customization(客专JPG)\不干胶\"+getitemstring(getrow(), 'guidang_no')

else

if dw_2.rowcount() = 1 then

ls_path = "\\S20\bz\生产交接资料\不干胶和贴签\"+getitemstring(getrow(), 'paint_no')

end if

if dw_2.rowcount()>1 then

ls_path = "\\S20\bz\生产交接资料\不干胶和贴签\"+getitemstring(getrow(),'compute_min')+'_'+mid(getitemstring(getrow(),'compute_max'),5)

end if

end if

// ls_path = "\\s20\Bestway\Packaging(包装)\Final Packaging Assets(最终印刷品资料)\JPG\Customization(客专JPG)\不干胶\"+getitemstring(getrow(), 'guidang_no')

// ls_path = "\\s20\BZ\客户包装JPG\不干胶\"+getitemstring(getrow(), 'guidang_no')

//      ls_path = "\\s20\BZ\不干胶汇总(Stickers Collection)\" + mid(getitemstring(getrow(), 'guidang_no'), 7,4) + "年不干胶\" +getitemstring(getrow(), 'guidang_no')

if fileexists(ls_path) = false then

messagebox("提示", "文件夹[" + getitemstring(getrow(), 'guidang_no') + "]不存在")

return

else

run("explorer " + ls_path + "\")

end if

end choose

isvalid的使用方法:

if not isvalid(message.powerobjectparm) then

messagebox("提示", "无效对象调用!")

close(this)

return

typeof的使用方法:(多使用于控件类型之中)

if typeof(message.powerobjectparm) <> DataWindow! then

messagebox("提示", "调用的对象不是DataWindow!")

close(this)

return

end if

end if

classname的使用方法: (多使用于变量之中)

string stringval

double dblval

date dateval

any anyval

anyval = myoleobject.application.cells[1,1].value

CHOOSE CASE ClassName(anyval)

CASE "string"

stringval = anyval

CASE "double"

dblval = anyval

CASE "datetime"

dateval = Date(anyval)

END CHOOSE

getactivesheet()的使用方法

mdiframewindow.GetActiveSheet( ) 返回的是一个MDI!类型的窗口.

Move的使用方法:(移动其坐标位置)

This statement changes the X and Y properties ofgb_box1to 150 and 200, respectively, and movesgb_box1to the new location:

gb_box1.Move(150, 200)

This statement moves the picturep_Train2next to the picturep_Train1:

P_Train2.Move(P_Train1.X + P_Train1.Width, &

P_Train1.Y)

//ldt_sap_check_date = today()//此时间为电脑上的时间

//invoice1.sap_check_date = getdate()//此时间为系统上的时间

exit退出循环

return退出程序


setpointer的使用方法

int i

pointer oldpointer

if dw_1.rowcount() <= 0 then return

oldpointer = SetPointer(HourGlass!)

if this.checked then

for i = 1 to dw_1.rowcount()

dw_1.setitem(i,'ck','1')

next

else

for i = 1 to dw_1.rowcount()

dw_1.setitem(i,'ck','0')

next

end if

setpointer(oldpointer)

//以下代码把焦点定位到第5行第3个字段:

dw_1.setfocus()//焦点切换到数据库窗口

dw_1.setrow(5)//切换当前行为第5行

dw_1.selectrow(0,false)//取消高亮显示

dw_1.selectrow(5,true)//高亮显示第5行

dw_1.setcolumn(3)//焦点移动到第3个字段

move(x,y)此函数修改的是控件的x,y坐标

resize(width,height)此函数修改的是控件的宽与高

                                                  match函数


SQL中的创建触发器--触发器例子

int value

value = GetFileSaveName("选择文件存放位置", "c:\", w_reg_main.inv_no+".XLS", "XLS", "Excel文件 (*.XLS),*.XLS")

if value<>1 then

   return 0

end if

lds_detail.saveas(ls_path, excel!, true)




模板导出

string ls_path, ls_file

int li_rc

ls_path = '快递导入模板'

li_rc = GetFileSaveName ( "Select File", ls_path, ls_file, "XLS", "Excel (*.xls),*.xls" , "C:\", 32770)

IF li_rc <> 1 Then return

integer li_FileNum

li_FileNum = FileCopy ("\\s03\共享文件\W.信息中心\个人文件夹\王灼安\BW_Express9快递\Bmp\快递导入模板.XLS" , ls_path, false)

if li_FileNum = -1 then

messagebox("提示", "复制文件错误!")

return

end if


Find

ls_key_id = dw_5.getitemstring(getrow(), 'key_id')

ll_row = dw_3.find("key_id='"+ls_key_id+"'", 1, dw_3.rowcount())


富文本框中去掉回车~n

string ls_mle_1, ls_string_before

integer li_pos

ls_mle_1 = trim(mle_1.text)

li_pos = pos(ls_mle_1, '~n')

do while li_pos > 0

ls_string_before = mid(ls_mle_1, li_pos + 1)

ls_mle_1 = trim(ls_string_before)

SetNull(li_pos)

li_pos = Pos(ls_mle_1, '~n')

loop

if isnull(trim(ls_mle_1)) or trim(ls_mle_1) = '' then

MessageBox('提示', '您输入的内容为空')

return

end if


点击回车跳转焦点

Send(handle,message#,lowword,long)

错误:

解答:这种错误查看下文件夹中是否包含代码中所描述的文件夹

dddw:可指 edit中的 DropDownDW 类型下的DataWindow       例如       dw_1.modify("mer_no.dddw.allowedit=no")

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,723评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,080评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,604评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,440评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,431评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,499评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,893评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,541评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,751评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,547评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,619评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,320评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,890评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,896评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,137评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,796评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,335评论 2 342

推荐阅读更多精彩内容