2008年9月18日 星期四

Infopath 重覆區段的參數們

infopath在編輯重覆區段時是記得focus在重覆的哪一份的, 可是這個索引值取不出來(或者不知道如何取, position()好像不是給它用的), 正常情況下在一些參數裡(查閱, 驗證, 規則)可以用../ooxx來參考同一個區段的其他欄位, 但如果在驗證或規則中必須切換資料來源時(從次要來源利用下拉式選單挑選資料), 它就會忘了自己原先在重覆區段的哪一個, 之後就必須用篩選但很難選。所以必須先把須要記住的值抄到不是重覆區段的地方當作暫存變數, 然後再引用才不會都引用到重覆區段的第一個區段。

2008年6月11日 星期三

Infopath的次要來源

Infopath 2003 sp2在下拉式選單的xpath查詢, 如果條件在另一個xml的資料來源,使用它的查詢編輯工具,xpath的開頭會有

xdXDocument:GetDOM("表單1")

這樣的描述, 可是再進入修改設定的對話窗中,這一段會自己消失,結果抓到主要資料來源去了

2008年6月2日 星期一

mysql 從big5轉utf8

幫叫獄部的健康醫學網進行big5到utf8的轉換, 過程記下來免得以後類似的工作多花冤枉路
1. 把資料庫資料夾copy進mysql data資料夾 (big5格式)
2. mysqldump 資料出來 (後來convertz說出來的文字檔已經是utf8了)
3. 把資料檔裡的character-set由big5改成utf8, 用notepad改的, 花了很久的等待時間
4. 因為insert into.. values (...),(...),...都沒換行, 常有一行幾萬字的, notepad沒辦法用全部取代加上換行(把 ),( 換成 ),\n( ), 改用notepad++的advance search(按ctrl-r出來), 還是慢到不得了, 乖乖丟上linux用sed (幸好前一陣子在裝vm)
5. iconv不能轉換, 再丟回xp用convertz, 結果它說已經是utf8了, 可能裝mysql時的內碼是設utf8
6. 在mysql中開一個新的db, 把資料 mysql -uroot -Ddb < data
7. 在phpmyadmin裡看, 一切似乎正常

2008年5月28日 星期三

VMPlayer

有一陣子沒有去碰linux的東西了, 為了要即將來到的新玩具, 要裝有點古早redhat 6.2, 發現vmware出了新的vmplayer(真得太久沒碰linux了), 不用$而且有許多現有的image可以選擇, 本來要抓它的redhat6.2的, 但那個只能從bt下載, 但bt會被網管阻擋抓不了, 結果反而抓了一堆其他的image. vmplayer不能開新的image,但是有人寫vmxbuilder可以開一個空白的, 自己做了一個單純安裝redhat62的image.

2008年5月25日 星期日

infopath的switch

在CDA中, 大量使用choice造成表單上必須常常在小方格裡選item, 對於使用者來說是一大不便. 簡單的方式是在每一個item的選擇區段中加上按鈕, 並且在按鈕的程式碼裡加上(js版本)
XDocument.View.ExecuteAction ("xReplace::replace","區段名");
區段名在目的地區段的內容對話窗裡的進階tab裡可以看到, 不是滑鼠靠過去時的名字, 那是繫結的欄位
重覆區段不用這麼麻煩, 只要在編輯區段內的欄位時按ctrl+enter就可以新增了
至於程式碼編輯器出不來, 大概只能移掉office再完全安裝了