◎FM程式被束縛在首頁畫面無跳離之解決How to Disable a FileMaker Startup Script
應同事要求,要在進銷存程式中增在登入密碼畫面,以防資料遭人篡改,著手寫一個能由他變更密碼的功能,且讓他有三次登打的機會,因此用了Loop指令,誰知出口沒有寫入,就用在主畫面,致使陷入無窮廻圈,即便按了Esc或Ctrl+Break鍵也無法跳脫,成了我焦心的夢魘,因為上面已有三個月的交易資料。乃求救於facebook的”FileMaker 台灣研究院”,並將程式放上去。幸好有成員熱心幫忙為我解困,並放上參考英文解說的範例:How to Disable a FileMaker Startup Script
事後,經看數次模擬仍不得其解。今晚總算開竅解出來了,趁印象深刻寫下處理步驟:
1. 新增一個新專案,只要一張表格,表格只要一個欄位,直接採預設名稱,都不必額外命名。將此欄位在它的面板(layout)上。
2. 到資料庫中,點關聯頁,點新增表格,來源選外來資料庫,這個資料庫即是你出了問題的資料庫,挑選其中一個不與登入畫面相關的任何一個表格。
3. 將畫面上兩張表格直接相引關聯在一起,從新專案表格引到出了問題的資料庫之表格任何一個欄名,將預設「=」的關聯改為「×」的不關聯,變更完成後確定離開。
4. 新增一個Script,指令用 移至相關記錄 ,設定成
「相關記錄來自」 選“出了問題的資料庫的關聯表格”
將「使用外部表格的版面」勾選
將「使用如下版面顯示記錄」下拉選“出了問題的資料庫的關聯表格”的版面
即可確定
儲存Script
5. 在新專案的表格的面板(layout)上,新增一個命令鈕,指定好Script後,儲存版面,並結束版面。
6. 點 命令鈕 畫面不會直接出現“出了問題的資料庫的關聯表格”的版面
7. 到功能列之 視窗 / 顯示視窗 /看到 “出了問題的資料庫”的名稱,點之
就看到了“出了問題的資料庫的關聯表格”的版面
點右上方 編輯版面 鈕
從 左上方 版面列中,點選 出了問題的表格版面,如主畫面
8. 到功能列之 檔案 / 檔案選項 點 指令碼觸發程序 頁
將執行異常指令碼的勾選取消
儲存版面,並結束版面。
就解除Loop設在startup script無法脫離的魔手
經驗提醒:
這悠關程式進出的門戶控制的程式碼,還沒寫完整之前,不要直接寫在首頁畫面,更不要直接放在程式進入的啟始位置,最好寫在其他版面來測試,待完全沒問題才放到指定的位置上。
