[FileMaker] 常見的坑(ㄧ)

本週二 FileMaker Taipei Meetup 聚會後有朋友詢問:

在嘗試去建立 Barcode Combo 檔案的時候,這邊的建立並不是直接複製 Field 欄位等等 ,而是自己去模仿部分的 Code,這樣的確是讓自己印象深刻的學習方式,但有可能會遇到一些「坑」(這裡的坑指的容易犯的錯誤,若掉進坑裡,沒有旁人幫助的話,沒花點時間要爬出來可不容易)。

今天把朋友在模仿 Barcode Combo 檔案遇到的幾個問題記錄下來,分享在這邊,希望一起學習 FileMaker 的人可以避免掉入這些坑。

問題一:條碼過短,好像哪裏怪怪的?

在「條碼輸入」的欄位輸入文字(比如 FileMaker),「條碼顯示」的欄位所顯示的條碼很短,這應該不是想要的結果,應該是有地方出錯了。

0-問題-條碼很短.png

檢查檔案 Database

這個檔案預設兩個 Custom Function:(詳細資料可自行參考檔案)

  • Code39
  • Code39Bit

這兩個 Custom Function 是就是 Barcode 能夠實現的關鍵,那我們去看使用到這兩個 Custom Function 的欄位:「長型條碼字節」、「條碼顯示」

先看「長型條碼字節」欄位

朋友把「長型條碼字節」欄位按照原作的作法,設定成 Auto-enter 計算欄位:

Code39Bit ( 條碼顯示 ; 條碼對齊方式 ; 300 )

發現問題

大家有發現奇怪的地方嗎?

沒錯,在三個 Parameter 的第一個「條碼顯示」,應該是要選擇「條碼輸入」才對,這個函數的目的應該是要把「輸入的符號文字」轉換成「條碼顯示」才對。

朋友把「條碼顯示」放在了「條碼輸入」的 parameter 上面,當然會有問題。

1-問題所在.png

修正問題

知道問題在哪,那就直接修正就好了

將第一個 Parameter 改成「條碼輸入」

Code39Bit ( 條碼輸入 ; 條碼對齊方式 ; 300 )

2-修正.png

測試結果

修改完成,做一下測試。

抓對問題,跳出這個坑,條碼可以正常顯示了!

3-結果.png

問題二:但是,條碼置中、置右可以呈現,為什麼置左就不行了呢?

沒那麼順利,朋友的第二個問題很快出現了。

我們可以看到在「條碼輸入」的欄位右邊有三個小英文字「l, m, r」分別代表的是「置左、置中,置右」的條碼呈現方式。點選「l」理論上條碼應該置左顯示,但選完竟完全沒有畫面了。

繼續爬坑。

螢幕快照 2018-02-02 下午7.24.51.png

檢查 Value List

因為我們知道「l, m, r」的控制在 Value List 中,所以直接先打開 Value List 做檢查。

裡面僅有一個 Value List: 「條碼對齊方式」,點開檢查。

螢幕快照 2018-02-02 下午7.17.03.png

發現問題

原來英文字「l」左方多了一個「空格」,這樣可不行,FileMaker 會把「l 」認成一個值,但我們實際需要的是沒有帶空格的「l」,這樣才能順利被辨認。

2-1-問題.png

修正問題

刪除空格即可!

2-2-修正.png

測試結果

修改完成,做一下測試。

抓對問題,跳出這個坑,置左條碼可以正常顯示了!

螢幕快照 2018-02-02 下午7.26.33.png

結論

以上的綜合整理,希望有幫助。

如果今天是複製別人的檔案做使用,建議一開始先不要做任何修改,按照順序

  1. Custom Function
  2. Value List
  3. Table
  4. Field
  5. Layout(如果有需要的話)

把檔案原原本本的複製過來先用,不然真的很容易遇到莫名其妙的問題,若這些問題並不是一時三刻可以解決的,就可能會耽誤到寶貴的開發時間。

至於若是要自己練習做學習,也是很好的事情,值得鼓勵,若是遇到問題,可以參考本篇文章的方法,基本上就是按照「檢查檔案」、「發現問題」、「修正問題」、「測試結果」幾個步驟反覆執行,直到成功為止。

當然,經驗會讓 Debug 的速度加快,另外把檔案拿到網路上的論壇、社團詢問,也是很好的解決問題的方式,但前提是要盡量把問題說明清楚,最好能夠「附檔」或是「附圖」,這樣獲得解決的機會會更高。

另外,歡迎把問題帶到每週二實體的 FileMaker Taipei Meetup 詢問有經驗的朋友。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s