PIXNET Logo登入

PowerBuilder 風雲再起 - PowerBuilder 使用者家族

跳到主文

PowerBuilder 使用者家族在 Yahoo 家族已經成立 10 年了,承蒙各為家族成員的愛護與支持,讓 PowerBuilder 使用者家族日益茁壯。為了提供更好的服務品質,因此決定在 Pixnet 成立 PowerBuilder 使用者家族的部落格,擴充對家族成員的服務。

部落格全站分類:數位生活

  • 相簿
  • 部落格
  • 留言
  • 名片
  • 9月 07 週二 201021:57
  • 如何利用 PowerBuilder 寄送 E Mail

隨著資訊科技的進步,E Mail 已經是現在人每日生活所不可或缺的生活工具。在 PowerBuilder 當中要如何設計 E Mail 寄送的功能呢?
在 PowerBuilder 當中提供有 4 個專門用來處理 E Mail 的系統物件,其功能如下:  

MailSessioin:負責登入及建立 MAPI 的連線。
MailMessage:是system structure,屬性包含了 eMail 的相關資訊。
MailRecipient:是system structure,屬性包含了相關人員資訊 ( From、To、CC、BCC )。
MailFileDescription:是system structure,屬性包含了附件的相關資訊。
(繼續閱讀...)
文章標籤

PB 發表在 痞客邦 留言(6) 人氣(2,523)

  • 個人分類:PowerScript 程式撰寫
▲top
  • 8月 06 週五 201019:38
  • 如何將半形轉為全型

PowerBuilder 廣告 - egg全形與半形應該只會發生在數字及大小寫英文字上
依據此理論可使用一個比較簡單的理論來實作,如下
1.問題:
   希望將 123大12345寫6456AB字Cabc
   轉換成 123大12345寫6456AB字Cabc
2.程式參考如下
string ls_char
string ls_result
string ls_string = '123大12345寫6456AB字Cabc'
string ls_data1 = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
string ls_data2 = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
integer i , li_pos
for i = 1 to len(ls_string)
   ls_char = mid( ls_string , i , 1 )
   if asc(ls_char) > 127 then
     ls_result += mid( ls_string , i , 2 )
     i ++
   else
     if (asc( ls_char ) >= 48 and asc( ls_char ) <= 57) or (asc( ls_char ) >= 65 and asc( ls_char ) <= 90) or (asc( ls_char ) >= 97 and asc( ls_char ) <= 122) then
     li_pos = pos( ls_data2 , ls_char )
     if li_pos > 0 then
     ls_result += mid( ls_data1 , (li_pos * 2 - 1) , 2 )
     else
     ls_result += mid( ls_string , i , 1 )
     end if
     else
     ls_result += mid( ls_string , i , 1 )
     end if
   end if
next
messagebox( 'Result' , ls_result )
(繼續閱讀...)
文章標籤

PB 發表在 痞客邦 留言(0) 人氣(732)

  • 個人分類:PowerScript 程式撰寫
▲top
  • 8月 04 週三 201023:33
  • PowerBuilder Web Form 如何以oleobject 產生Excel報表???

說明:
以下在Client-Server下可正常使用,在Web Form 下,li_int <>0.
OLEObject myoleobject
myoleobject = CREATE OLEObject
li_int = myoleobject.ConnectToNewObject( "excel.application")
IF li_int <> 0 THEN
Messagebox("錯誤","無法連結至Excel!")
Destroy myoleobject
RETURN -1
END IF
(繼續閱讀...)
文章標籤

PB 發表在 痞客邦 留言(0) 人氣(469)

  • 個人分類:PowerScript 程式撰寫
▲top
  • 7月 29 週四 201022:25
  • PowerBuilder 的動態SQL語句 - 格式四

當執行有輸入參數並且返回結果集的格式在編譯時無法確定的SQL語句時可以使用第四種格式。有時候我們執行一些SQL語句時,不僅帶有參數而且返回的結果集中有多少個欄位,每個欄位是什麼類型的資料都不確定,這時只能使用第四種格式來實現。


1語法
  PREPARE DynamicStagingArea FROM SQLStatement{USING TransactionObject};
  DESCRIB DynamicStagingArea INTO DynamicDescriptionObject;
  DECLARE cursor DYNAMIC CURSOR FOR DynamicDescriptionObject;
  OPEN DYNAMIC cursor USING DESCRIPTOR DynamicDescriptionObject;
  FETCH cursor USING DESCRIPTOR DynamicDescriptionObject;
  CLOSE cursor;



其中:DynamicDescriptionObject是PowerBuilder提供的一個資料類型,在PowerBuilder中提供了一個DynamicDescriptionObject類型的全局資料類型SQLDA,用來存放動態SQL語句的輸入輸出參數。


(繼續閱讀...)
文章標籤

PB 發表在 痞客邦 留言(0) 人氣(546)

  • 個人分類:PowerScript 程式撰寫
▲top
  • 7月 29 週四 201022:23
  • PowerBuilder 的動態SQL語句 - 格式三

當執行有輸入參數並且返回結果集的格式在編譯時可以確定的SQL語句時可以使用第三種格式。這種格式語法比較複雜,但要比前面兩種功能強,可以返回結果集。在返回結果時由於不知道滿足過濾條件的記錄到底有多少條,因此第三種格式通常採用游標的形式。


1語法
  DECLARE cursor DYNAMIC CURSOR FOR DynamicStagingArea;
  PREPARE DynamicStagingArea FROM SQLStatement{USING TransactionObject};
  OPEN DYNAMIC cursor {USING Parameterlist};
  FETCH cursor INTO VariableList;
  CLOSE cursor;



 


2應用實例
  將表base中的code欄位中間兩位為”01”的所有記錄讀取出來並分別進行相應處理。
  STRING lsSQL,lsCode,lsName,lsFilter
  LsFilter=”01”
  LsSQL=”SELECT code,name FROM base WHERE substring(code,3,2)=?”
  DECLARE cursor_base DYNAMIC CURSOR FOR SQLSA;
  PREPARE SQLSA FROM:lsSQL;
  OPEN DYNAMIC cursor_base USING:lsFilter;
  FETCH cursor_base INTO:lsCode,:lsName;
  DO WHILE SQLCA.SQLCODE=0
   .
   ∥對滿足條件的記錄根據要求分別進行處理
   .
   FETCH cursor_base INTO:lsCode,:lsName;
  LOOP
  CLOSE cursor_base;


  其中cursor是用戶所定義的游標的名字。
  
(繼續閱讀...)
文章標籤

PB 發表在 痞客邦 留言(0) 人氣(1,465)

  • 個人分類:PowerScript 程式撰寫
▲top
  • 7月 29 週四 201022:20
  • PowerBuilder 的動態SQL語句 - 格式二

當執行帶輸入參數但沒有返回結果集時的SQL語句可以採用第二種格式。該格式不僅可以動態地指定要執行的SQL語句,同時還可以動態地確定SQL語句所需要的參數值。



1語法
  PREPARE DynamicStagingArea FROM SQLStatement{USING TransactionObject};
  EXECUTE DynamicstagingArea{USING Parameterlist};



其中:DynamicstagingArea是PowerBuilder提供的一種資料類型。PowerBuilder本身提供了一個名字為SQLSA的DynamicstagingArea類型的總體變數,用於保存要執行的動態SQL語句資訊。
  


2應用實例
  刪除base表中的滿足一定條件的記錄。
  STRING lsCode
  lsCode=”320101”
  PREPARE SQLSA FROM“DELETE base WHERE code=?”;
  EXECUTE SQLSA USING:lsCode;



(繼續閱讀...)
文章標籤

PB 發表在 痞客邦 留言(0) 人氣(253)

  • 個人分類:PowerScript 程式撰寫
▲top
  • 7月 29 週四 201022:14
  • PowerBuilder 的動態SQL語句 - 格式一

當執行沒有輸入參數並且沒有返回結果集的SQL語句時可以使用這種格式,這種格式使用比較簡單,其實現的操作也比較少。

  1. 語法
      EXECUTE IMMEDIATE SQLStatement{USING TransactionObject};


其中SQLStatement是要執行的SQL語句,可以直接用引號將要執行的SQL引起來用,或者用字串變數的形式提供SQL語句。通過使用字串變數可以在具體執行的時候才指定要執行什麼樣的SQL語句。TransactionObject是用戶所使用的事務物件,缺省為SQLCA。
  



2應用實例
  ①建立一張資料庫表(base),SQL語句的表述用引號引起來直接使用。


EXECUTE IMMEDIATE‘CREATE TABLE base(code char(6),name char(30))’USING SQLCA;



  ②執行對資料庫記錄的操作,在表base中插入一條記錄,SQL語句通過字串變數傳遞執行語句。



  STRING lsSQL
  LsSQL=”INSERT INTO TABLE base VALUES(’320201’,’市中區支行’)”
  EXECUTE IMMEDIATE:lsSQL;




 
(繼續閱讀...)
文章標籤

PB 發表在 痞客邦 留言(0) 人氣(489)

  • 個人分類:PowerScript 程式撰寫
▲top
  • 7月 29 週四 201022:09
  • PowerBuilder 的動態SQL語句

原作者:張繼榮 王舉國 譚琦 謝元呈
摘要:本文介紹了PowerBuilder開發工具中嵌入式SQL語句與動態SQL語句之間的區別和特點,並通過具體實例詳細說明了如何在PowerBuilder中使用動態SQL語句以及四種格式的動態SQL語句各自所能實現的功能。
一、前言
  PowerBuilder是目前最流行的資料庫開發工具之一。中國農業銀行的“信貸綜合管理系統”和用於上報人民銀行的信貸登記諮詢系統的“介面程式”都是使用PowerBuilder開發的。PowerBuilder提供了在程式碼中加入嵌入式SQL語句的功能來支援對資料庫的訪問。但這種嵌入式SQL語句只能支持一些固定的標準的SQL語句,即在進行程式碼編譯處理時這些SQL語句必須是確定的,例如:對哪張表哪幾個欄位進行操作在程式碼中是固定寫明的,另外這種方式也不能執行像Creat Table,Creat Database等這些資料庫定義的語句(DDL)。因此這種嵌入式SQL語句在實際應用中有一定的局限性。為克服這種方式的局限性,可以使用PowerBuilder提供的動態SQL語句,這種對資料庫訪問的方式可以完成嵌入式SQL語句無法實現的功能。如建庫、建表這一類的資料庫定義語句(DDL);其次,由於動態SQL語句允許在執行時才確定到底要執行怎樣的SQL語句,因此使用動態SQL語句可以使程式實現參數化設計,具有很大的靈活性和通用性。
(繼續閱讀...)
文章標籤

PB 發表在 痞客邦 留言(0) 人氣(353)

  • 個人分類:PowerScript 程式撰寫
▲top
  • 7月 22 週四 201020:07
  • 請問 checkbox物件 可以變成變數嗎?

integer li_ii
for li_ii = 1 to 10
cbx_(li_ii).checked = true
next
cbx_N 可以變成變數來代用嗎 還是只能用判斷式一個個勾 感謝



  
(繼續閱讀...)
文章標籤

PB 發表在 痞客邦 留言(2) 人氣(371)

  • 個人分類:PowerScript 程式撰寫
▲top
  • 7月 20 週二 201022:24
  • 統一編號檢查

//統一編號檢查
integer li_v1, li_v2, li_v3, li_v4, li_v5, li_v6, li_v7, li_v8
string ls_v1, ls_v2, ls_v3, ls_v4, ls_v5, ls_v6, ls_v7, ls_v8
boolean lb_ret1, lb_ret2, lb_retval
//乘上權數
ls_v1=string(integer(mid(as_tid,1,1))*1,'00')
ls_v2=string(integer(mid(as_tid,2,1))*2,'00')
ls_v3=string(integer(mid(as_tid,3,1))*1,'00')
ls_v4=string(integer(mid(as_tid,4,1))*2,'00')
ls_v5=string(integer(mid(as_tid,5,1))*1,'00')
ls_v6=string(integer(mid(as_tid,6,1))*2,'00')
ls_v7=string(integer(mid(as_tid,7,1))*4,'00')
ls_v8=string(integer(mid(as_tid,8,1))*1,'00')
//所有乘積和
li_v1=integer(left(ls_v1,1))+integer(right(ls_v1,1))
li_v2=integer(left(ls_v2,1))+integer(right(ls_v2,1))
li_v3=integer(left(ls_v3,1))+integer(right(ls_v3,1))
li_v4=integer(left(ls_v4,1))+integer(right(ls_v4,1))
li_v5=integer(left(ls_v5,1))+integer(right(ls_v5,1))
li_v6=integer(left(ls_v6,1))+integer(right(ls_v6,1))
li_v7=integer(left(ls_v7,1))+integer(right(ls_v7,1))
li_v8=integer(left(ls_v8,1))+integer(right(ls_v8,1))
IF (mod(li_v1+li_v2+li_v3+li_v4+li_v5+li_v6+li_v7+li_v8,10)=0) THEN
lb_ret1=TRUE
ELSE
lb_ret1=FALSE
END IF
IF li_v7=10 THEN
IF (mod(li_v1+li_v2+li_v3+li_v4+li_v5+li_v6+1+li_v8,10)=0) THEN
lb_ret2=TRUE
ELSE
lb_ret2=FALSE
END IF
ELSE
lb_ret2=FALSE
END IF
lb_retval=lb_ret1 OR lb_ret2
return lb_retval



  
(繼續閱讀...)
文章標籤

PB 發表在 痞客邦 留言(0) 人氣(234)

  • 個人分類:PowerScript 程式撰寫
▲top
12»

個人資訊

PB
暱稱:
PB
分類:
數位生活
好友:
累積中
地區:

熱門文章

  • (662)PowerBuilder 風雲再起
  • (393)pb 6.5 的dw內可以放.jpg圖片嗎?
  • (1,524)如何動態變更 DW 中排序欄位
  • (229)Sybase PowerBuilder 12實現Microsoft .Net應用開發-更快速、容易且具成本效益
  • (282)PBDOC - 整理 PowerBuilder 文件的工具
  • (6,564)PowerBuilder 12 免費線上教學
  • (497)關於 PowerBuilder 12 的 DataWindow 跟 Excel 一樣的自動過濾資料功能進一步說明
  • (4,198)我與PowerBuilder不得不說的故事 - 仲偉豪
  • (815)PowerBuilder 在 SAP 未來的展望
  • (140)PowerBuilder 入門課程開課了

文章搜尋

文章分類

toggle PB程式設計 (3)
  • 學習資源 (25)
  • 函數(Function) (2)
  • PowerScript 程式撰寫 (12)
toggle PowerBuilder 新訊 (1)
  • PowerBuilder 12 (18)
toggle 資料庫應用 (4)
  • SQL (2)
  • Sybase (2)
  • MS SQL (1)
  • 資料庫連結 (1)
toggle 學習 PowerBuilder (3)
  • PowerBuilder 歷史 (6)
  • PowerBuilder 書籍 (9)
  • PowerBuilder 未來 (8)
toggle DataWindow 應用 (3)
  • Datawindow 控制元件 (3)
  • Datawindow 物件 (2)
  • Datawindow Script (5)
toggle PB 家族公佈欄 (2)
  • 部落格訊息 (8)
  • 活動訊息 (15)
  • .net (1)
  • 未分類文章 (1)

最新文章

  • PowerBuilder 入門課程開課了
  • PowerBuilder 12 開課了
  • 堅持的信念 - 15 位扶輪好講師的生命智慧
  • !!! 急徵 PowerBuilder 工程師
  • PowerBuilder 在 SAP 未來的展望
  • PowerBuilder 15 Beta 版發表公告
  • PowerBuilder 12.x 跟 12.5.x 不再銷售
  • 誠徵 PowerBuilder 工程師
  • 「雲端互助利潤共享」廣告分紅計畫
  • 1+1確實大於2。PowerBuilder 12 .NET 實機操作體驗營圓滿結束

文章精選

參觀人氣

  • 本日人氣:
  • 累積人氣: