一個簡單的flex PopUpManager視窗通訊範例
Source請按右鍵選Viewsource
做個筆記,省的每次都忘記XD
//被搜尋的字串
str1=”abcgdefgggg”
//關鍵字
key=”gg”
document.write(CountKeyword(str1,key));
function CountKeyword(str,keyword){
index = 0;
count = 0;
while (index!=-1){
index = str.indexOf(keyword,index);
if (index!=-1){
index = index + keyword.length;
count++;
}
}
return count;
}
今天在刻code要指定butoon的onclick屬性時,於是我寫了以下的code
$(#test).attr("onclick","play()")
測試後發現,FF2可以執行,IE7不行…
後來突然想到雖然onclick也是寫在標籤中,但是他是事件不是屬性
於是把code改成
$("#test").bind('click', function(){return play();});
就可以了XD
各位鄉親!code寫累的時候要起來走一走,動一動,眼睛左右各轉三十圈,才不會掉到自已挖的陷阱。
Heroku這個網站很有趣,提供線上開發ROR的服務,還可以安裝Gem
臨時有點子想實作或是到客戶那想秀一下這個網站是不錯的選擇,哈!
有興趣的朋友可以用左方的MSN外掛或留言跟我索取邀請函
下圖是寫code的地方,按Gem & plugin的地方會引導到裝gem的地方
編輯器的地方有定位不準的問題,讓人蠻困擾的
裝Gems的頁面
因為找不到類似的東西所以自已寫了一個(總覺得又在亂打造輪子…)
把計算上班日的程式放到SQL處理,好處是效能好,可以直接用SQL做SUM、AVG等運算
想扣國定假日的話,可以把日期存在table再去比對,這部份我就沒寫了,有大大寫好的話請分享給我,謝謝,哈哈
函數名稱
GetWorkMinute(開始時間,結束時間)
傳回值
扣除星期六、日,午休,上班八小時以外的分鐘數
使用方式**:
*範例一
SELECT dbo.GetWorkMinute(‘2007-12-19 17:17’,’2007-12-20 11:59’) as worktime
傳回:222
呼叫自訂函數時要打全名不可省略dbo
程式碼:
–登入 DB
USE DB名稱;
GO
–如果有叫做dbo.GetWorkMinute的函數就移除它
IF OBJECT_ID (N’dbo.GetWorkMinute’, N’FN’) IS NOT NULL
DROP FUNCTION dbo.GetWorkMinute;
GO
CREATE FUNCTION GetWorkMinute
(
@startDate DATETIME ,
@endDate DATETIME
)
RETURNS int
AS
–程式開始的區塊,類似C、php的大括號
Begin
–定義變數的保留字declare
declare @DayMinute int,@s_Minute int,@s_Minute2 int,@i int,@x DATETIME,@resultMin int
–值帶給變數的時候前面要加set
set @DayMinute = 860 –1天上班小時
set @s_Minute = 960 –早上點上班
set @s_Minute2 = 1860 –下午點下班
declare @weekdays int,@totalDay int,@bgMin int,@endMin int
set @i = 0
if @startDate is not null and @endDate is not null
set @weekdays = 0
–計算申請日期和建置完成日期差幾天
set @totalDay=DateDiff(day,@startDate,@endDate)
–開始時間換算為分鐘
set @bgMin=(DatePart(hour,@startDate)60+DatePart(minute,@startDate))
–建置完成時間換算成分鐘
set @endMin=(DatePart(hour,@endDate)60+DatePart(minute,@endDate))
–取申請日期和建置日期中有幾個假日
while @i<=DateDiff(day,@startDate,@endDate)
begin
set @x=DateAdd(day,@i,@startDate)
if DatePart(weekday,@x)=1 or DatePart(weekday,@x)=7
set @weekdays=@weekdays+1
set @i=@i+1
end
–計算總花費時間
–若申請時間、建置時間相隔超過一天
– (公司下班時間- 申請時間) + (建置完成時間- 公司上班時間) + 中間相隔天數8 60 -日期區間中的六、日
–否則
– 建置時間- 開始時間
if @totalDay>=1
–跨天
begin
set @resultMin= abs(@s_Minute2-@bgMin)+abs(@endMin-@s_Minute)+((@totalDay-1)@DayMinute)-(@weekdays*@DayMinute)
end
else
–同一天
begin
set @resultMin=abs(@endMin-@bgMin)
end
–判斷有沒有經過中午,有的話扣掉中午休息時間
if @totalDay>=1
–跨天
begin
if DatePart(hour,@startDate) <12 set="" @resultmin="@resultMin-60" if="" datepart(hour,@enddate)="">12
set @resultMin=@resultMin-60
end
else
begin
–同一天
if DatePart(hour,@startDate) <12 and="" datepart(hour,@enddate)="">12
set @resultMin=@resultMin-60
end
return @resultMin
END 12>12>
如何在SQL server**中設定自訂函數**
打開SQL server Management >新增查詢>貼入程式碼
成功以後會出現在
把Access資料轉到SQLserver有很多方式,寫程式轉(很麻煩= =)、用Access2003的轉換精靈(不能更換資料表名稱,不能批次轉換,若Access
DB很少可以用這方法)
使用SQL Server Business Intelligence Development Studio雖然也是麻煩但設定檔設定完成後可以批次轉換所有Access資料庫,適合Access DB量大的時候
開啟Microsoft Visual studio 2005 > Microsoft Visual studio 2005
專案 > SSIS匯入和匯出精靈
選擇資料來源Microsoft Access
選擇資料目的
**
來源是Access的資料表,目的地是SQL的資料表,你可以把目的地的table 名稱改成你想要的**
然後按設定選先卸除再建立新目的資料表(如果SQLserver原本就有同樣名稱的資料表,轉檔時會發出錯誤,所以先移除同樣檔名的資料表)
**
Intelligence service會自動產生左邊紅框框的流程
卸除資料表SQL工作:如果有選擇先卸除再建立新目的資料表就會出現
準備SQL工作:會在SQL server中建立剛匯入的table schema,但是不會帶出原本的主鍵、外鍵等…= =
資料流程工作:設定access資料和sql資料的mapping**
**
因為準備SQL工作中,沒有主鍵等設定…所以自已加入,設定如下**
主鍵: PRIMARY KEY
欄位自動加1: IDENTITY (1, 1)
複數主鍵:
CONSTRAINT [PK_TABLE的名稱_site] PRIMARY KEY CLUSTERED
(
[主鍵欄位1] asc,
[主鍵欄位2] asc
)
範例:
CREATE TABLE [EOP-APP004].[dbo].[MCline] (
[pr_id] int ,
[seq] int,
[planner_coder] nvarchar(10),
[part_no] nvarchar(50),
[part_desc] nvarchar(100),
CONSTRAINT [PK_MCline_site] PRIMARY KEY CLUSTERED
(
[pr_id] ASC,
[seq] asc
)
)
GO
或是
用access 2003的SQL轉換精靈先轉進一個暫時的資料庫
**
然後用sql server2005的物件總管查看create table該table的語法**
把table的schema設好後,就是一個基本的轉檔script,你可以利用Intelligence Development Studio提供的其他工作再加上其他的功能。
因為要計算時間區間內沒有周休二日、午休時間的真正上班時間
之前寫在asp、php裡感覺比較慢也覺得code不好維護。
為什麼SQL沒有只抓上班時間的函數= =
研究了一下自訂函數的方法,因為第一次接觸有錯請告訴我,謝謝
撰寫的位置:
登入SQL Server Management Studio後>新增查詢
CODE:
–登入你的DB
USE Tbcwmonet;
GO
–如果dbo.GetWorkMinute這個函已存在就刪掉
IF OBJECT_ID (N’dbo.GetWorkMinute’, N’FN’) IS NOT NULL
DROP FUNCTION dbo.GetWorkMinute;
GO
CREATE FUNCTION GetWorkMinute
(
@要帶入的值1 資料型態 ,
@要傳入的值2 資料型態,
@…………………………
)
RETURNS int
AS
begin
return @要傳回的值
end
說明
Begin….END:類似C、Java、PHP的大括號{、}用來把程式的區塊標出來
EX:
(計算日期區間中的六、日有幾天)
while @i<=DateDiff(day,@startDate,@endDate)
begin
set @x=DateAdd(day,@i,@startDate)
if DatePart(weekday,@x)=1 or DatePart(weekday,@x)=7
set @weekdays=@weekdays+1
set @i=@i+1
end
變數要用declare宣告,並用@開頭,值給變數時要用set
EX:
declare @DayMinute int,@s_Minute DATETIME
set @DayMinute = 8*60
set @s_Date =”2008/01/01”
寫完後按執行
SQL server 2005自訂函數會放在DB中>可程式性>函數>純量值函數的資料夾中。
起因是同事常到處亂跑,常找不到人所以寫了這支程式,不過寫了也沒人用,哈哈哈~
功能:置換圖片,改變所在位置和描述,並有置頂、最小化關閉等功能
以下是flex3+php的上傳檔案範例,以Air的型式發佈也很方便
FLEX
php
$uploaddir = 'uploads/';
$uploadfile = $uploaddir . basename($_FILES['Filedata']['name']);
$temploadfile = $_FILES['Filedata']['tmp_name'];
move_uploaded_file($temploadfile , $uploadfile);
?>
tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent: meta: false pages: false posts: title: true date: true path: true text: false raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: false tags: true