1 引言
社會不斷發展進步,人們對天氣形式的變化越來越關心,越來越重視。這樣的背景下就需要市氣象局向電臺、電視臺、報紙等各媒體發布天氣預報,同時向省氣象局上傳電視報、手機短信等內容,其中大部分內容要求在特定的時段內完成,這不僅使得預報員的工作任務大大增加,也因工作時間太松散而容易導致錯誤的發生。這篇論文介紹的就是用易語言編寫的預報綜合服務軟件,該軟件主要是通過網絡定時向省局和互聯網上傳各種規定時段內的發送任務。
2 易語言簡介
易語言是一種自主開發,適合不同層次不同專業人員的易學易用的全中文的編程語言。易語言還是一個適合國情,支持漢字編程的、全可視化的、跨主流操作系統平臺的編程工具軟件。它能與常用的編程語言互相調用,具有充分利用API、COM、DLL、OCX組件,各種主流數據庫,各種實用程序等多種資源的接口和支撐工具。易語言有自主開發的高質量編譯器,中文源代碼被直接編譯為CPU指令,運行效率高,安全可信性高;擁有自己的數據庫系統,且支持訪問現有所有數據庫。它綜合采用了結構化、面向對象、組件、構架、集成化等多種先進技術,并在運行效率、性能價格比、全可視化支持等方面具有特色,對多媒體功能支持強大,有完善的網絡、端口通訊和互聯網功能支持。易語言的可視化設計操作不僅支持程序窗體界面,還可將流程圖嵌入其中;模塊化開發滿足大型軟件的設計要求;自帶的易數據庫能提供接口技術的全面支持,易語言是中國人自己的編程語言。
3 程序介紹
3.1 程序主界面及功能
此程序主要是用來在規定時段內自動發送各種預報結論,如定時向E-mail郵箱發送北方晨報、千山晚報;向省氣象局上傳電視報、手機短信等。主界面下顯示是否有任務等待發送,如果有發送任務,則顯示距離發送的時間及連接狀態、回執情況等內容。
3.2 程序各模塊介紹
3.2.1 電視報模塊
該模塊主要是編輯電視報并通過FTP遠程登錄省局服務器,按所設置的時間自動上傳。窗口中顯示電視報編輯框,根據不同時間自動加載不同的報頭,預報員對電視報編輯完成后選擇保存并選定時上傳按鈕,電視報就會在規定時間內上傳到省局指定的路徑下,其中時間和路徑都在設置窗口中完成。另外,程序還可以提取最近一次發送電視報的內容及獲取回執。
程序主要語句如下:
FTP遠程登錄:
如果 (連接FTP服務器 (省局FTP服務器, 省局FTP賬號, 省局FTP密碼, ,) = 真) 連接電視報FTP狀態透明標簽.標題 = “連接chenggong”
如果真 (讀配置項 (“d:\\gztx\t.ini”, “工作任務”, “電視報上傳”, ) = “1”)
最后一次電視報路徑 = 讀配置項 (“d:\\gztx\t.ini”, “電視報編輯框提取內容路徑”, “最后一次電視報路徑”, )
更改后的文件名 = 電視報時間處理子程序 ()
連接電視報FTP狀態透明標簽.標題 = “準備發送”
如果 (最后一次電視報路徑 = “d:\\gztx\\dsb\\” + 更改后的文件名)
如果 (FTP文件上傳 (“d:\\gztx\\dsb\\” + 更改后的文件名, 讀配置項 (“d:\\gztx\t.ini”, “上傳路徑設定”, “電視報上傳路徑”, ) + 更改后的文件名, ))
斷開FTP服務器 ()
電視報形成:
下午電視報時間差 = 取小時 (取現行時間 ()) × 100 + 取分鐘 (取現行時間 ()) - 到整數 (讀配置項 (“d:\\gztx\t.ini”, “時間設定”, “下午電視報發送時間設定”, ))
下午電視報距離時間 = 到整數 (取文本左邊 (讀配置項 (“d:\\gztx\t.ini”, “時間設定”,“下午電視報發送時間設定”, ), 2)) × 60 + 到整數 (取文本右邊 (讀配置項 (“d:\\gztx\t.ini”, “時間設定”, “下午電視報發送時間設定”, ), 2)) - 取小時 (取現行時間 ()) × 60 - 取分鐘 (取現行時間 ())
3.2.2 短信平臺模塊
這個模塊主要編輯發送鞍山小靈通、鞍山手機短信、海城手機短信、臺安手機短信、岫巖手機短信等內容。預報員在各個編輯框中輸入所要發送的預報內容,然后點擊啟動定時發送按鈕,短信就會在規定時間內發送出去。另外,由于短信內容有字數限制,所以在編輯框后顯示要求內剩余的字數,如果該項顯示為0,就不能再輸入了。程序主要語句如下:
寫到文件 (“d:\\gztx\\下午小靈通.txt”, 到字節集 (鞍山小靈通內容編輯框.內容))
如果 (時間差 ≥ 0)
寫配置項 (“d:\\gztx\t.ini”, “工作任務”, “鞍山小靈通”, “1”)
發送短信子程序 (“鞍山小靈通”)
寫配置項 (“d:\\gztx\t.ini”, “工作任務”, “鞍山小靈通”, “1”)
鞍山小靈通內容保存按鈕.標題 = “已啟動定時發送”
啟動窗口.鞍山小靈通時間差顯示透明標簽.標題 =“距離小靈通發送時間還有:”+ 到文本 (距離時間)
3.2.3 電子郵件模塊
此模塊主要用來編輯并定時向郵箱發送北方晨報和千山晚報的電子郵件,如圖1。以北方晨報為例,預報員選中編輯北方晨報按鈕,編輯框中會顯示上一次發送的預報內容,預報員可以在此基礎上修改預報結論,然后選則保存啟動定時發送按鈕,預報就會以文本文件格式保存在本地磁盤指定位置并定時發送到指定郵箱。
主要語句如下:

如果 (連接發信服務器 (“網址”,21 , “郵箱”, “密碼”, 60000) = 真)
補發郵件按鈕.標題 = “連接成功”
如果 (發送郵件 (“鞍山氣象”, 讀入文本 (北方晨報文件號, ), 北方晨報收信人地址, , ,“as121_qs@126.com”, ) = “”)=“”表示發送成功
寫配置項 (“d:\\gztx\t.ini”, “工作任務”, “北方晨報”, “0”)
北方晨報透明標簽.標題 = “北方晨報:已發送完畢”
關閉文件 (北方晨報文件號)
否則
北方晨報透明標簽.標題 = “北方晨報:發送失敗,請手動重發”
關閉文件 (北方晨報文件號)
3.2.4 時間設置模塊
該模塊主要是設置上述提及的定時發送電視報、手機短信、電子郵件所需要設定的時間,如圖2。預報員根據各種預報規定的上傳時間在此設置。以小靈通短信為例,主要程序如下:
如果 (寫配置項 (“d:\\gztx\t.ini”, “時間設定”,“下午小靈通發送時間設定”, 小靈通小時組合框.內容+小靈通分鐘組合框.內容))

小靈通時間設定按鈕.標題 = “修改完畢”
否則
小靈通時間設定按鈕.標題 = “修改失敗”
3.2.5 路徑設置模塊
該模塊主要是設置上述提及的電視報、手機短信、電子郵件所需要設定的上傳路徑。以電視報為例,主要程序如下:
省局FTP服務器編輯框.內容 = 讀配置項
(“d:\\gztx\t.ini”, “上傳路徑設定”,“省局FTP服務器”, )
省局FTP賬號編輯框.內容 = 讀配置項
(“d:\\gztx\t.ini”, “上傳路徑設定”, “省局FTP賬號”, )
省局FTP密碼編輯框.內容 = 讀配置項(“d:\\gztx\t.ini”, “上傳路徑設定”, “省局FTP密碼”, )
4 結語
本文論及的程序,涉及了向省氣象局上傳電視報和手機短信及向互聯網發送電子郵件等內容,這個程序能為預報員節省很多工作時間,并且很大程度上避免了預報的漏發。該軟件已在工作中得到應用,非常穩定。