.Net 樣版小探 (.Net templates review)

Posted by Eric... On 2016年11月17日 星期四 0 意見

Access 2007 開啟時只顯示表單

Posted by Eric... On 2016年7月1日 星期五 0 意見

客戶需求:
一般使用者進入 Access 2007 只顯示表單(Form),將資料表隱藏起來,並且無法直接存取資料表(Table)。避免一般使用者直接更改資料表內容。

經過 Google 查詢國內外的資料,確認只要加上以下的 code 於VBA程式碼,再重新啟動就看不到表單之外的資料。那開發人員或是管理者呢?處理方式為開啟Access檔案時,按下 Shift 鍵就會跳過以下程序。

Sub SetStartupProperties()
Const DB_Text As Long = 10
Const DB_Boolean As Long = 1
    ChangeProperty "StartupForm", DB_Text, "首頁"  ‘修改為啟動表單頁
    ChangeProperty "StartupShowDBWindow", DB_Boolean, False
    ChangeProperty "StartupShowStatusBar", DB_Boolean, False
    ChangeProperty "StartupMenuBar", DB_Boolean, False
    ChangeProperty "AllowShortcutMenus", DB_Boolean, False
    ChangeProperty "AllowBuiltInToolbars", DB_Boolean, False
    ChangeProperty "AllowFullMenus", DB_Boolean, False
    ChangeProperty "AllowBreakIntoCode", DB_Boolean, False
    ChangeProperty "AllowSpecialKeys", DB_Boolean, True
    ChangeProperty "AllowBypassKey", DB_Boolean, True
   
    DoCmd.ShowToolbar "Ribbon", acToolbarNo
    DoCmd.ShowToolbar "Status Bar", acToolbarNo
    DoCmd.NavigateTo "acNavigationCategoryObjectType"
    DoCmd.RunCommand acCmdWindowHide
   
End Sub

Function ChangeProperty(strPropName As String, varPropType As Variant, varPropValue As Variant) As Integer
    Dim dbs As Object, prp As Variant
    Const conPropNotFoundError = 3270

    Set dbs = CurrentDb
    On Error GoTo Change_Err
    dbs.Properties(strPropName) = varPropValue
    ChangeProperty = True

Change_Bye:
    Exit Function

Change_Err:
    If Err = conPropNotFoundError Then ' 找不到屬性。
     Set prp = dbs.CreateProperty(strPropName, _
     varPropType, varPropValue)
     dbs.Properties.Append prp
     Resume Next
    Else
     ' 未知的錯誤。
     ChangeProperty = False
     Resume Change_Bye
    End If
End Function

READ MORE

VS2013 failed to register URL 0x80070020

Posted by Eric... On 2016年6月20日 星期一 1 意見

今天開啟一個久違的專案,無奈VS2013出現一個錯誤訊息:

vs2013 failed to register URL  0x80070020。

疑…上個月開專案不是好好的嗎?我的乖乖呢?網路上查了一些解決方式,研判是port被佔住造成無法執行VS2013內建的 IIS Express。但 VS2013的web port可不是說改就改的哦,修改方式我也幫你準備好了,請看以下步驟二。

步驟一、找出是否真的有程式佔用了port,123456是port編號。

netstat -a -n -o | find "123456"

 

步驟二、修改以下二個檔案內有關 port 的連結,換另一個port
  • C:\Users\[user name]\Documents\IISExpress\config\applicationhost.config
  • 專案.sln
READ MORE

取出字串的最後一個數字

Posted by Eric... On 2016年5月27日 星期五 0 意見

取出字串中的第一數字比較容易,那字串有好多組數字,想要取回字串的最後一組字串怎麼處理呢?
請出Google大神,竟然沒有什麼參考資料,只好自己來。
以下為範例,重點在那個 REVERSE 函數哦!

DECLARE @productname varchar(100);
set  @productname = 'T20-5-2.12'

select
@productname,
cast(
reverse(
case PATINDEX('%[-,a-z,A-Z,~,@,#,$,%,&,*,(,),<,>]%',STUFF(REVERSE(@productname), 1,PATINDEX('%[0-9]%', REVERSE(@productname))-1,''))
when 0 then STUFF(REVERSE(@productname), 1,PATINDEX('%[0-9]%', REVERSE(@productname))-1,'')
else SUBSTRING(STUFF(REVERSE(@productname), 1,PATINDEX('%[0-9]%', REVERSE(@productname))-1,''),1,
     PATINDEX('%[-,a-z,A-Z,~,@,#,$,%,&,*,(,),<,>]%',STUFF(REVERSE(@productname), 1,PATINDEX('%[0-9]%', REVERSE(@productname))-1,''))-1)
end) as decimal(18,2))

READ MORE

JQuery Datatables 無法分頁, 排序

Posted by Eric... On 2015年8月11日 星期二 0 意見

起因:
這二天打算練習 MVC.NET 與 JQuery Datatables 整合,好不容易克服 JSON 的資料傳遞問題,結果又遇到 Datatables 無法排序,分頁也不正常。依照經驗,先查看看網頁引用的 JQuery 的版本是否與 Datatables 不相容,修改後仍然無解,看來設定也都沒有問題,在網頁估狗也看不到什麼有用的解法。突然見到 Java Script 中的參數名稱 serverSide 和有些網友寫的不太一樣,有些網友是加上 b 這個前置字元,代表 binary。那就試試看,沒想到這就是問題點,改完後就運作正常了。

Status: Case closed.

image

 

image

READ MORE

MS-SQL Multiple-step OLE DB 錯誤

Posted by Eric... On 2015年4月15日 星期三 0 意見

昨日在進行新系統上線測試,而這個測試是個報表相關程式。在一般的查詢條件之下,系統都可以正確無誤統計出資料,但是速度不快。但是下到某一個特定的字串查詢,怪事就發生了,系統出現附圖中的錯誤訊息:

Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.

天呀,這是什麼鬼東東,照例往估狗大神請教去,世界各地專家大都建議查查 SQL connection 連結字串,或查詢時欄位設定的問題,也有可能是 MDAC driver 的問題,我就照著那些建議試著去調校但仍不得其解,只好悶著頭自己測試,突然發現有一段的 SQL 查詢速度慢的不正常,像是 index 未使用到,心想試試也無妨就多加一個 index 作測試。Bingo,SQL 的執行速度立馬恢復正常,錯誤訊息也不見了。沒想到此錯誤訊息找一下午,只要加上 index 就可以打包收工。只能說上天保佑程式人。

Status: Case closed.

image

READ MORE

Android手機聯絡人: 群組同步問題

Posted by Eric... On 2014年12月12日 星期五 0 意見

起因:
話說某朋友有隻三爽牌的 S3 Note 手機,因為 Gmail 帳號在原舊手機刪除後造成每個聯絡人群組內的聯絡人都不見了,我心想不就把手機上的聯絡人再同步一次不就可以了?No No No,並沒有同步,Gmail 和三爽牌手機一邊一國各管各的,無論同步幾次都無法將群組內的聯絡人更新到手機內。經過一番Google後發現有個聯絡人群組同步的功能,但是只有 HTC 手機有此功能,三爽牌沒有,殘念,難不成要將手機重置才以將聯絡人群組同步回來??但是,真是漂亮的但是…天公疼好人,在測試的過程中,突然發現如果增加一個新群組,這個新群組內的聯絡人竟然可以同步到手機。叮噹…靈光一閃,我可以解決這個問題了!

詳細解法在底下! 不用在手機上刪除帳號,聯絡人群組也可以恢復正常哦。步驟請見下圖說明。

Status: Case closed.

步驟一、GMail 聯絡人: 增加一個新群組,將此群組命名為 Test

步驟二、將各群組內的聯絡人全部加上此一新群組: Test

步驟三、開啟手機的帳號同步,各群組內的聯絡人數量會同步為最新資料

步驟四、檢查各群組的資料無誤後,可將剛剛新增加 Test 群組刪除

image

READ MORE