LotusScript 學習筆記1
一、簡介
LotusScript 是基於Lotus應用平臺的面向對象的腳本語言。
具有以下幾個優點:
1.BASIC的擴展集
簡單易學,學習過VB的用戶,會很容易上手
2.跨平臺
Windows,Macintosh, OS/2, UNIX, z/OS, and OS/400等平臺都支持
3.面向對象
LotusScript 具有自定義的對象類,用戶可以訪問調用這些類。同時,這些類大部分是事件驅動的。
4.包含在Lotus software application中
可以通過編寫Lotus Script來訪問Lotus software application中的類庫。
5.OLE支持
6.與其他語言的交互
formula,java,javascript
7.IDE(Integrated Development Environment)
LotusScript的IDE提供了創建,編輯,和debug 的功能,同時也可以瀏覽類的變量和屬性信息。
8.LotusScript libraries
可以編寫並且在Lotus應用程序和其他應用中使用。
9.可以通過LSXs 進行擴展
LSXs:Lotus Software Extensions,用戶可以創建自己的類和對象。
二、腳本和聲明的語法
聲明的語法
1.一般一個功能語句是一行,其中包括LotusScript的關鍵字,操作,變量名等
2.空白行、縮進並不會產生影響,單詞之間用空格隔開,多個空格無影響
3.一條聲明儘量在一行之內,程序塊的聲明,需要換行時一般用_放在需要繼續的一行的尾部。
4.一條語句結束一般直接換行,若是一行中有多個語句,用:隔開
5.註釋一般是用'開始
例子
'One statement on one line
Print "One line"
'One statement on two lines; extra white space
Print "One" & _ 'Comment allowed here
"Two"
'Two statements on one line
Print "One" : Print "Two"
String的表示,可以用個"",||,{}.||中的字符可以包含多行。三種符號不可以嵌套。
如果想要將",|,{作爲String的內容,寫兩次便可。例如:|A bar string with a bar || in it|
變量,常量,類型,類,函數,子函數或者熟悉的命名:
首字符必須爲大寫或者小寫的字母;
必須是字母,數字或者_;
不區分大小寫;
可以添加類型後綴(%, &, !, #, @, or $);
最大長度40;
三、數據類型,常量和變量
常用類型
Boolean,2bytes
Byte, 1bytes
Integer, 2bytes
Long, 4bytes
Single, 4bytes
Double, 8bytes
Currency,8bytes
String, 2bytes/character
數據結構
Array
List
Variant
用戶自定義的數據結構和類。
數據類型轉換
當我們在一個操作中遇到兩個不同類型的number時,我們需要把他們轉換成同一個類型。
一般我們選擇轉換成兩個中高等級的類型。等級從低到高如下:
Byte,Integer, Long, Single, Double, Currency。
值傳遞時,數據類型若不是過程期待的類型時,LotusScript會嘗試轉換成需要的類型,轉換過後值過大就會報錯。
引用傳遞時,數據類型必須匹配函數的要求。
數據轉換函數:CBool, CByte, CCur, CDat, CDbl, CInt, CLng, CSng, CStr, and CVar.
數據轉換tips
$基本上可以講任何數據轉化爲String
修復截斷一個浮點數到整型總會變成零
int截斷一個浮點數到整型值總會變小
DateValue把一個String的數據轉化成date
DateNumber把一系列數字轉化成date value
自動數據轉換,隱式數據類型轉換的情況:
給變量賦值的類型與變量的類型不同;
當數據操作超過變量類型的上線時,例如:
aVariantV = 32767
Print TypeName(aVariantV) ’ Output: INTEGER
aVariantV = aVariantV + 5
Print TypeName(aVariantV) ’ Output: LONG
並不是每次格式轉換都會成功的,格式轉換失敗的話彙報相應的錯誤
Example 1
'This example illustrates the automatic conversion
'of decimal numbers to integers that happens when you perform
'integer division and when you assign a decimal number value
'to an integer variable.
Dim anInt As Integer
Dim aDouble As Double
'Do floating-point division.
anInt% = 12/7
Print anInt%
'Output: 2
aDouble# = 12/7
Print aDouble#
'Output: 1.71428571428571
'Do integer division.
anInt% = 12\7
Print anInt%
'Output: 1
aDouble# = 12\7
Print aDouble#
'Output: 1
'Do floating-point division.
anInt% = 12.5/2
Print anInt%
'Output: 6
aDouble# = 12.5/2
Print aDouble#
'Output: 6.25
'Do integer division.
anInt% = 12.5\2
Print anInt%
'Output: 6
aDouble# = 12.5\2
Print aDouble#
'Output: 6