;
帖子
3919 
精华
积分
11710 
鱼币
0 ¥ 
来自
大连 
在线时间
1858 小时 
注册时间
2007-6-11 
最后登录
2009-10-20 

贴图大师勋章新人进步勋章宣传大使勋章论坛元老勋章

3
发表于 2009-1-5 19:48 | 只看该作者
楂 绾 缁 楠 鐐 婊 - 缂栫▼搴 - Powered by SupeSite

浣犵殑浣嶇疆锛缂栫▼搴 >> 璧勮 >> Power Builder >> 缂栫▼鎶宸 >> 璇︾粏鍐呭 鍦ㄧ嚎鎶曠ǹ

楂 绾 缁 楠 鐐 婊

鍙戝竷: 2008-6-26 20:40 |  浣滆: admin |   鏌ョ湅: 25娆

Yield()鍑芥暟鐨勫仛鐢

Yield()鏄竴涓笉甯哥敤鍒扮殑PowerBuilder鍑芥暟銆傚彲鏄紝鍦ㄤ竴涓ぇ鐨勫惊鐜繃绋嬩腑锛屽鏋滅敤鎴锋兂鍦ㄦ墽琛屽埌涓鍗婃椂閫氳繃鍗曞嚮鎸夐挳鎴栬彍鍗曟潵閫鍑虹殑璇濓紝灏变竴瀹氳鐢ㄥ埌Yield()鍑芥暟浜嗭紝鍚﹀垯绋嬪簭鍙細鍦ㄦ墽琛屽畬鎴愭暣涓惊鐜悗鎵嶄細鍝嶅簲鎸夐挳鎴栬彍鍗曠殑Click浜嬩欢銆傚皢Yield()鍑芥暟鏀惧湪寰幆浣撶殑涓棿銆傞偅涔堝湪寰幆鎵ц鐨勮繃绋嬩腑鍙戠幇鏈夋柊鐨勪簨浠舵秷鎭湪娑堟伅闃熷垪涓氨鍥炵珛鍗冲幓鍝嶅簲銆

PowerBuilder涓浣曞悓涓插彛閫氳

鍦ㄥ簲鐢ㄤ腑锛屾湁鏃堕渶瑕侀氳繃COM鍙e拰澶栬閫氳銆傜敤C缂栧啓鐩稿簲鐨勫姩鎬佽繛鎺ュ簱(DLL)鍑芥暟锛岀劧鍚庡湪Power Builder涓皟鐢ㄥ浐鐒舵槸涓涓ソ鍔炴硶銆傚彲鏄紝濡傛灉涓嶇啛鎮塁鍜學indows API鐨勮皟鐢紝灏辨樉寰楁湁浜涘洶闅句簡銆 PowerBuilder鏀寔MS 鐨凮CX鎺т欢锛岃繖鏍凤紝鎴戜滑鍙互鍒╃敤VB4闄勫甫鐨凪SCOMM32.OCX鏉ュ疄鐜板悓COM鍙g殑閫氳銆傚疄鐜版柟娉曞涓嬶紝鍏堝湪绐楀彛涓婂姞鍏LE鎺т欢锛岄夋嫨MSCOMM32銆傜紪绋嬩妇渚嬪涓嬶細

ole_comm1.Object.CommPort = 1 // ole_comm1鏄疧LE鎺т欢鐨勫悕绉帮紝CommPort鏄鍙c

ole_comm1.Object.Settings = "2400,N,8,1" //璁剧疆閫氳鍗忚

ole_comm1.Object.InputLen = 0 //鍒濆鍖朓nput

ole_comm1.Object.PortOpen = True //鎵撳紑COM鍙

ole_comm1.Object.Output = "a" //鍚慍OM鍙e彂閫佸瓧绗

Do

Yield() //涓鐩寸瓑寰咃紝鐩村埌InBuffer鏈夋暟鎹

LOOP Until ole_comm1.Object.InBufferCount >= 1

ls_Output = ole_comm1.Object.Input //鍙栨暟鎹

鎵╁睍PowerBuilder鐨勫姛鑳

灏界PowerBuilder鎻愪緵鐨勫ぇ閲忓嚱鏁板彲浠ユ弧瓒冲ぇ澶氭暟鐢ㄦ埛鐨勯渶瑕侊紝鍙槸锛屽湪涓浜涚壒娈婄殑鍥惧舰澶勭悊锛岀瀛﹁绠楃瓑搴旂敤涓紝杩樻槸鏃犳硶鐢≒owerBuilder鏉ュ疄鐜帮紝杩欏氨涓嶅緱涓嶅熷姪澶栭儴鍑芥暟浜嗐侾owerBuilder鏀寔鍔ㄦ佽繛鎺ュ簱(DLL)鐨勮皟鐢ㄣ傝繖鏍凤紝鎴戜滑灏卞彲浠ヨ嚜宸辩敤C鎴朌elphi缂栧嚭鎴戜滑闇瑕佺殑鍔熻兘锛屽皢瀹冪紪璇戞垚DLL锛岀劧鍚庡湪PowerBuilder涓皟鐢ㄣ傚厛鍦(Declare)鑿滃崟涓夋嫨(Global External Function...)锛屾墦寮瀹氫箟澶栭儴鍑芥暟瀵硅瘽妗嗐傚湪瀵硅瘽妗嗕腑杈撳叆鍑芥暟鐨勫畾涔夈備妇渚嬪涓嬶細function int max(int a,int b) linrary "mydll.dll" 銆傚畾涔夊畬涔嬪悗锛屽氨鍙互璞′娇鐢≒owerBuilder鐨勫唴閮ㄥ嚱鏁颁竴鏍蜂娇鐢ㄨ嚜宸卞畾涔夌殑澶栭儴鍑芥暟浜嗐

瀹㈡埛鏈轰粠鏈嶅姟鍣ㄥ彇寰楃郴缁熸椂闂

PowerBuilder涓湁鍑芥暟today()鍜屽嚱鏁皌ime()鍒嗗埆杩斿洖褰撳墠鏈哄櫒鐨勬棩鏈熷拰鏃堕棿銆傚彲鏄鏋滅敤鎴峰湪浣跨敤鐨勮繖鍙版満鍣ㄤ笂浠绘剰鐨勪慨鏀圭郴缁熺殑鏃ユ湡鍜屾椂闂达紝閭d箞鍦ㄥ湪搴旂敤绯荤粺涓敤today()鍜宼ime()鍑芥暟灏卞緱涓嶅埌姝g‘鐨勫綋鍓嶆棩鏈熷拰鏃堕棿浜嗐傚湪瀹㈡埛鏈嶅姟鍣ㄧ粨鏋勪腑锛屾湁涓鍙版満鍣ㄦ槸鐢ㄥ仛鏁版嵁搴撴湇鍔″櫒鐨勶紝涓鑸敤鎴峰緢闅惧湪涓婇潰淇敼鏃堕棿锛屾垜浠氨鍙互鍦ㄩ渶瑕佸綋鍓嶆棩鏈熷拰鏃堕棿鐨勫湴鏂逛粠鏈嶅姟鍣ㄤ笂鍙栧緱鏃堕棿銆傛柟娉曞涓嬶細浠ybase锛堟垨MS SQL Server锛夋暟鎹簱涓轰緥锛屽畾涔夊嚱鏁皍f_getdate()杩斿洖datetime鍙橀噺銆

datetime d_today

select getdate() into :d_today from tablename;

return d_today

灏卞彲浠ュ緱鍒版湇鍔″櫒鐨勭郴缁熸椂闂翠簡锛屽叾涓璯etdate()鏄疭ybase(鎴朚S SQL Server)鐨勭郴缁熷嚱鏁帮紝寰楀埌褰撳墠鏃堕棿锛岃繑鍥瀌atetime鍙橀噺銆傚湪鍏朵粬鏁版嵁搴撲笂涔熷簲璇ユ湁绫讳技鐨勫嚱鏁般

灏忓啓閲戦杞崲鎴愬ぇ鍐欓噾棰

鍦ㄥ緢澶氬鎵撳嵃鍙戠エ鐨勫湴鏂归渶瑕佹墦鍗伴噾棰濈殑涓枃澶у啓锛孭owerBuilder娌℃湁鎻愪緵杩欐牱涓涓暟瀛楄浆鎹㈡垚閲戦澶у啓鐨勫嚱鏁般傛垜灏辫嚜宸辩紪浜嗕竴涓紝鍦ㄥ疄闄呬娇鐢ㄤ腑鏁堟灉鑹ソ銆傜▼搴忔簮浠g爜濡備笅锛

int i,lendec,lenint

string numstr,a,b,c,d,bbak

numstr=string(aje,"#0.00")

lenint=len(mid(numstr,1,pos(numstr,'.') - 1))

if right(numstr,2)='00' then

lendec=0

else

lendec=2

end if

string dxint[13],dxdec ,sz[13]

string dxstr="涓囦粺浣版嬀浜夸粺浣版嬀涓囦粺浣版嬀鍏"

string szstr="闆跺9璐板弫鑲嗕紞闄嗘煉鎹岀帠"

for i=1 to 13

dxint[i]=mid(dxstr,26 - i*2+1,2)

if i<11 then

sz[i]=mid(szstr,i*2 - 1,2)

else

sz[i]=" "

end if

next

dxdec ="瑙"

dxdec ="鍒"

dxstr=" "

for i = 1 to lenint

a = mid(mid(numstr,1,lenint),i,1)

b = sz[integer(a)+1]

c = dxint[lenint - i +1]

if dxstr<>" " then

d = mid(dxstr,len(dxstr) - 1 ,2)

else

d = " "

end if

if b="闆" and (d="闆" or b=bbak or c="鍏" or c="涓" or c="浜") then b=""

if a="0" and c<>"鍏" and c<>"涓" and c<>"浜" then c=""

if (c="鍏" or c="涓" or c="浜") and d="闆" and a="0" then

dxstr=mid(dxstr,1,len(dxstr) - 2)

d = mid(dxstr,len(dxstr) - 1,2)

if (c="鍏" and d="涓" or c="涓"and d="浜") then c=""

end if

dxstr=dxstr + b + c

bbak = b

next

for i=1 to lendec

a = mid (mid(numstr,lenint+2,lendec),i,1)

if a="0" and dxdec[i]="鍒" then

b=""

else

b=sz[integer(a) + 1]

end if

if a<>"0" then

dxstr=dxstr+b+dxdec[i]

else

dxstr=dxstr+b

end if

next

if lendec=0 then dxstr=dxstr+"鏁"

return dxstr

鎵撳嵃 | 鏀惰棌姝ら〉 |  鎺ㄨ崘缁欏ソ鍙 | 涓炬姤
涓婁竴绡 涓嬩竴绡
 

璇勫垎锛0

鍙戣〃璇勮
鏌ョ湅鍏ㄩ儴鍥炲銆愬凡鏈0浣嶇綉鍙嬪彂琛ㄤ簡鐪嬫硶銆