顯示具有 筆記 標籤的文章。 顯示所有文章
顯示具有 筆記 標籤的文章。 顯示所有文章

2017年3月31日

小工具開發紀錄

紀錄在工作上為了哪些事情個別寫程式去解決或縮短工作時間:
  • 台新 SPTS
    使用 iBatis.NET + log4net以文字檔儲存 sql紀錄,因為是用參數傳入的語法,若要人工剪下貼上參數,數量一多就很費時費力

    => 寫一支 iBatisLogParser,複製 iBatis的 log貼上,自動轉換成參數已經代入好的 sql句,本質上就是字串內容的辨識及取代
    .
  • 台新 SPTS
    開發環境封閉,無法連外網,有時需要看 Json格式但沒排版過的 log會很痛苦

    => 寫一支 JsonPrettyOffline,排版美化 Json格式的 log,易於閱讀
    .
  • 台新 SPTS
    檢查以 xml格式儲存 key/value的 wording,避免 key值重複取錯值

    => 寫一支 MessageListChecks,自動檢查
    .
  • 台新 SPTS
    每天要從 tfs抓取當天的 bug、CR數量等紀錄,並統計各 PG每天完成哪些 bug、CR

    => 寫一支 WorkItemTracer,自動產生統計表格及產生圖表
    .
  • 遠通 eTag Portal

    => 改寫以 vbs開發的壓縮 txt log程式

2016年10月13日

懸浮按鈕 & 自動填入表單

懸浮按鈕
<input type="button" value="Import" style="positionL fixed; z-index: 10000; top: 95%; left: 5px;" onclick="$('#importFile').click()" />
<input id="importFile" type="file" style="position: fixed; z-index: 10000l top: -100px; left: -100px;" onchange="Import(this)" />
function Import(fileInput) {
    var reader;
    if(window.File && window.FileReader && window.FileList && window.Blob) {
        reader = new FileReader();
    }
    else {
        return;
    }

    var txtContent;
    if(fileInput.files && fileInput.files[0]) {
        reader.onload = function (e) {
            txtContent = e.target.result;
            console.log(txtContent);

            // Custom Code
            // End of Custom Code
        }
        reader.readAsText(fileInput.files[0]);

        //Reset
        fileInput.value = '';
    }
}

2016年2月1日

提早 Timeout

客戶反應未到四小時就被登出
檢查 Web程式的 web.config
Session Timeout和 Form Auth Timeout都是設定 240(分)
Log紀錄也有正常的 Timeout紀錄

可能是因為 Load Balance的 Sticky Timeout只設 60(分)

2015年11月16日

瑜珈課的體悟

同一個口令/指示 有多少人就有多少不同的動作

需要老師輔助

超越極限

個體能力不同

2015年10月23日

開發時各項工具的選擇 要考慮後續維護使用

做台新專案的經驗
PM堅持 UML用 Astah做
但是接手的台新 IT團隊都用 Enterprise Architech

2015年5月14日

繳費疑雲

一個帳號前後有兩個擁有者A,B

A把帳號讓渡給B了

B去查帳單的時候,A、B的兩個時期的帳單都有
B把所有帳單都繳掉了

這時查繳費紀錄只會出現B的資料
A去查繳費紀錄時就查不到了

user卻想在繳費紀錄看到“誰產生帳單的”

2015年4月20日

Single Page

用 ajas post只更新畫面中的部分區塊&javascript

debug javascript時很麻煩 ...

2015年4月1日

前端頁面使用者操作紀錄

在遠通的專案,發生了 end-user在 CSS系統繳費,說是只繳兩筆,但是系統銷帳卻有三筆的狀況

但是因為沒有頁面元件操作紀錄,所以死無對証

解決的方法可以考慮在 checkbox綁 onclick,每按一下就紀錄下來,submit的時候一併送出,再寫入 log

2014年10月2日

json轉 GUID字串檢核格式不嚴謹

foreach (object obj in args)
{
    if (obj == null)//需過濾參數=null
    {
        continue;
    }
    else if (obj.ToString().Length == 38 && obj.ToString().IndexOf("-", 0, 10) == 9)
    {
        activityId = JsonConvert.DeserializeObject<guid>(obj.ToString());
        break;
    }
    else if (obj.ToString().Length == 36 && obj.ToString().IndexOf("-", 0, 10) == 8)
    {
        activityId = Guid.Parse(obj.ToString());
        break;
    }
}

然後人家輸入一個剛好長度 38的字串,第一個 - 又剛好在第十個字元 就死了


原本我是想到用 regular expression做檢核
想了一串的 regex
Regex regGuid = new Regex("[{(]?[a-zA-Z0-9]{8}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[]{12}[})]?");

後來看到別人提供的做法
foreach (object obj in args)
{
    if (obj == null)
    {
        continue;
    }
    else if (Guid.TryParse(obj.ToString(), out activityId))
    {
        break;
    }
}

只是要注意 tryparse失敗的話 guid會被填成 Guid.Empty

2014年7月15日

解決 Visual Studio載入時發生錯誤 您必須在使用系統管理員帳戶的環境中執行Visual Studio,才能 ... blahblah

因為 Url已經在 IIS被綁定
所以需要移除 binding

開啟 powershell執行以下程式碼(或以記事本存成 .ps1檔案後執行)


$appCmd = "C:\Program Files (x86)\IIS Express\appcmd.exe" 

$result = Invoke-Command -Command {& $appCmd 'list' 'sites' '/text:SITE.NAME' } 
for ($i=0; $i -lt $result.length; $i++) 
{ 
    Invoke-Command -Command {& $appCmd 'delete' 'site'  $result[$i] } 

}
如果有註冊表問題,依照提示訊息至 regedit修改

2014年1月14日

開發注意事項

Log裡面個資是否為明碼

text Log => Web、AP Server => 都應該依子系統(大分類)分資料夾

找回 密碼  http://my.oschina.net/zhengyun/blog/192693

(管) 確認每個功能會用到的 API  當 API有修改時,通知所有會用到的功能的負責工程師

難字 post AllowHtml

2014年1月9日

看到問題了 以後怎麼預防

Terry Chien
    看到遠通 web server被駭
    mail詢問怎麼預防

Jonathon
    通行費 errorMessage null 
    佈版流程
    以後怎麼預防
    Jerry: check-in > 上 uat > user 測試 > 上 prod
             緊急佈版  要先跟 user講沒有測

2013年8月14日

執行錯誤的選擇

時程不會因為你下了錯誤的決定並執行而往後延
除了這次補救回來
以後必須避免錯誤的判斷

如同昨天在測試 css設定是否只在 IE7會有問題
堅持使用自己修改瀏覽器模式的 IE7去找問題
後來請他人開 VM用 IE7測就沒問題
等於做白工 ... 

2013年6月18日

SA文件的意外

在完成 TWM的檔案同步系統(考試系統 Phase II)的 SA文件時 

寄信給客戶,結果是由客戶自行轉成 v1.0  且還有添加新的內容

我也沒仔細檢查

應該要這樣表達:確認沒有問題後,我會轉成 v1.0正式版

2013年6月4日

話術 002

習以為常的內容, 基本的能力, 反而容易被忽視


可以從這些忽略掉的東西去給予鼓勵

2013年5月14日

List for survey

Excel Utility (use Factory Method with EPPlus, ClosedXML)

Design Pattern

Event & Delegate

Enterprise Library

KnockoutJS

AngularJS

NodeJs

Entity Framework

Dojotoolkit.org

Cupoy

Icenium  雲端開發 App

Markdown

Octopress

OpenCart

NoSQL

Mango DB

Perl

LISP

2013年5月3日

修復計畫

  1. 程式怎麼改
    資料怎麼補
  2. 取得同意
  3. 修改 & 補資料
ex: 
全國意向
bug五月才修完
所以應該是要補四月的資料
把要補的帳號、登入記錄、使用記錄, 列給對方
詢問對方是否要採用
並告知對方補進去的資料可能會跟已經被下載的報表有誤差
取得同意後
再把資料補進去

2013年2月18日

初學程式語言


對學生來說

學習一個有用的(for Job)程式語言還是學一個有趣的(for personal)程式語言好?

如果一開始不是循序漸進的從資料型態開始一股腦的傾倒
而是給一個有趣的題目
然後慢慢的從架構程式中教導
會不會比較好?

2013年2月6日

書單

進入IT產業必讀的200個 .NET面試決勝題:從求職準備、面試流程、開發心得、重點回顧到經典試題的完整剖析

重構-改善既有程式的設計

2013年2月5日

威知 總結 #2

1. SVN的安裝。

    僅參考 無腦安裝 SVN 過程,使用 Visual SVN
                 http://demo.tc/Post/589

2. 利用Literal元件組合HTML依你的描述並非好作法,請提供你的建議作法。

  威知工程師多把 Literal用在組 html Table字串

  因為第一個案子就先做 MVC架構的關係
  看到這種 html在後台組出來的直覺就認為修改 UI時較麻煩
  會想盡量把 Model跟 View分離
  就用 ListView或 Repeater

  有時做 select的 option這種沒有特別功能及 UI需求的
  我也會用 Literal直接串
 

3. 整理你有用過的TreeView元件。官網、限制、優缺點等

    沒有用過其他的 TreeView
    查到被推薦的 TreeView就先看看有沒有拖曳及選單功能
    (在節點上按右鍵跳出的選單選項也要能客製設定)
    查 API看如何實現節點的新增修改刪除
    (有些 TreeView要寫 php, 太麻煩)

    後來發現 Telerik的 RadTreeView除了 server-side的編輯方式
    client-side給的函數功能也很齊全
    新增修改刪除拖曳都可以在 client-side用 Ajax post完成

4. 依開發經驗,你覺得abstract的優缺點為何。

    優點:
        可以先打好程式架構, 實作時只要 override要實作的方法
        可避免重複開發相同邏輯的程式

    缺點:
        還沒想(感覺)到

5. 研究國貿局那種儲存即編譯的作法。

   差異在開專案時選擇的類型

   File → New → Web Site
   File → New → Project → Visual C#, Web → ASP.NET Web Application

   除了專案內資料夾(檔案)結構的差異,主要為編譯方式不同
 
   參考:
       網站和專案的不同?
       Web Application Projects versus Web Site Projects in Visual Studio