6 ตุลาคม 2554

25 เคล็ดลับความสำเร็จของ Steve Jobs (หนึ่งในผู้ก่อตั้ง Pixar)

25 เคล็ดลับความสำเร็จของ Steve Jobs (หนึ่งในผู้ก่อตั้ง Pixar)

เพื่อเป็นการไว้อาลัยแก่ Steve Jobs หนึ่งในผู้ที่เข้ามาปฏิวัติวงการ IT และยังเป็นหนึ่งในผู้ก่อตั้ง Pixar บริษัทที่ทำอนิเมชั่นที่มีชื่อเสียงของโลก วันนี้ จขกท มี เคล็ดลับการประสบความสำเร็จของเค้ามาฝากค่ะ
"เขาว่ากันว่ามีแอ็ปเปิ้ลสามลูกที่เปลี่ยนโลกใบนี้ แอ็ปเปิ้ลลูกแรกคือ ลูกที่อดัมและอีฟกินเข้าไป แอ็ปเปิ้ลลูกที่สองคือ ลูกที่ตกใส่หัวของเซอร์ไอแซ็ค นิวทัน ทำให้เขาค้นพบแรงโน้มถ่วงของโลก และแอ็ปเปิ้ลลูกที่สาม คือ แอ็ปเปิ้ลของสตีฟ จ็อบส์"

25 สิงหาคม 2554

ผู้นำ กับ เจ้านาย

ผู้นำจะทำหน้าที่เป็นโค้ช เป็นกุนซือให้กับทีมในทุกสถานการณ์
ทั้งในและนอกสนาม หรือแม้กระทั่งหยุดพัก ดูแลในทุกๆเรื่อง ร่างกาย
อารมณ์ร่วมถึงทักษะในการทำงาน ผิดกับเจ้านาย ที่คอยสั่งให้ทีมไปถึง
เป้าหมายอย่างเดียว

ผู้นำสามารถขับเคลื่อนทีม สร้างแรงบันดาลใจ และเป็นตัวอย่างที่ดี
ให้กับคนในองค์กร ผิดกับเจ้านาย ที่ต้องการ อำนาจ ตำแหน่ง เพื่อให้
คนเคารพและร่วมมือ

24 สิงหาคม 2554

ฟังก์ชันหารและการปัดทศนิยม


ฟังก์ชันหารไม่เอาเศษมีสามตัวครับ คือ round(), ceil(), floor() แตกต่างยังไงดู samples เลยครับ

1. Math.Round(2.5) = 3 - ปรับให้ถ้าเกิน 0.5 ครับ
2. Math.Ceiling(2.5) = 3 ปรับขึ้นตลอดครับ
3. Math.Floor(2.5) = 2 ปรับลงตลอดครับ
4. 4 mod 3 = 1 หารเอาเศษ

19 สิงหาคม 2554

การใช้งาน AddHandler (ตัวอย่าง TextBox ให้รับค่าตัวเลขอย่างเดียว)

    Sub AddCurrencyTextBox()
        Try
            'เมื่อเกิดการพิมพ์ค่าเข้า Textbox ให้เรียก Function  keypressed
            AddHandler TextBox1.KeyPress, AddressOf keypressed
            AddHandler TextBox2.KeyPress, AddressOf keypressed
        Catch ex As Exception
            Throw ex
        End Try
    End Sub

    Public Sub keypressed(ByVal o As [Object], ByVal e As KeyPressEventArgs)
        e.Handled = NumbericOnly(o, e.KeyChar)
    End Sub 'keypressed

    Public Function NumbericOnly(ByVal TargetTextBox As Windows.Forms.TextBox, ByVal CurrentChar As Char, Optional ByVal bIsUseSign As Boolean = True) As Boolean
        Try
            If IsNumeric(CurrentChar) = True Then
                Return False
            End If

            If CurrentChar = vbBack Then
                Return False
            End If

            If Convert.ToString(CurrentChar) = "+" OrElse Convert.ToString(CurrentChar) = "-" Then
                If bIsUseSign Then
                    Return False
                Else
                    Return True
                End If
            End If

            Return True
        Catch ex As Exception
            Throw ex
        End Try

    End Function

14 สิงหาคม 2554

การใช้งาน SQL Function

1. การสร้าง Function

(Scalar-valued and)

CREATE FUNCTION ISOweek  (@DATE datetime)
RETURNS int
AS
BEGIN
   DECLARE @ISOweek int
   SET @ISOweek= DATEPART(wk,@DATE)+1
      -DATEPART(wk,CAST(DATEPART(yy,@DATE) as CHAR(4))+'0104')
--Special cases: Jan 1-3 may belong to the previous year
   IF (@ISOweek=0) 
      SET @ISOweek=dbo.ISOweek(CAST(DATEPART(yy,@DATE)-1 
         AS CHAR(4))+'12'+ CAST(24+DATEPART(DAY,@DATE) AS CHAR(2)))+1
--Special case: Dec 29-31 may belong to the next year
   IF ((DATEPART(mm,@DATE)=12) AND 
      ((DATEPART(dd,@DATE)-DATEPART(dw,@DATE))>= 28))
      SET @ISOweek=1
   RETURN(@ISOweek)
END
GO

(table-valued )

CREATE FUNCTION SalesByStore (@storeid varchar(30))
RETURNS TABLE
AS
RETURN (SELECT title, qty
      FROM sales s, titles t
      WHERE s.stor_id = @storeid and
      t.title_id = s.title_id)
GO

2. การเรียกใช้งาน Function (Scalar-valued )

SET DATEFIRST 1
SELECT dbo.ISOweek('12/26/1999') AS 'ISO Week'


4 สิงหาคม 2554

3 สิงหาคม 2554

29 กรกฎาคม 2554

การใช้งาน Enum และ CONSTRUCTOR

1. การประกาศ Enum และ CONSTRUCTOR

Public Class Class1

Private objStatus As enuOperation_Type
Public Enum enuOperation_Type
ADDNEW
UPDATE
DELETE
SEARCH
NULL
End Enum

Public Sub New(ByVal Operation_Type As enuOperation_Type)
MyBase.New()
'This call is required by the Windows Form Designer.
' InitializeComponent() 'ถ้าเป็น windows Form ใช้งานตรงนี้

'Add any initialization after the InitializeComponent() call
objStatus = Operation_Type
End Sub

End Class


2. การใช้งาน

Private Sub testEnum_CONSTRUCTOR()
        Try
            Dim objcls As New Class1(Class1.enuOperation_Type.ADDNEW)
        Catch ex As Exception
            Throw ex
        End Try
End Sub

การใช้งาน app.config

การใช้งานฐานข้อมูล MS SQL 2005/2008 (NewDatabase,Backup,Restore)

1. การสร้างฐานข้อมูล

27 กรกฎาคม 2554

ติดตั้ง ASP.NET

ไปที่ C:\WINNT\Microsoft.NET\Framework\v2.0.xxxxx แล้วกดรัน
จะขึ้นหน้าต่าง Dos แล้วพิมพ์ตามข้างล่างแล้ว Enter

aspnet_regiis –i


24 กรกฎาคม 2554

Kill All Process SQL Server 2005/2008

ขั้นตอน

1. รัน Query ข้างล่างนี้

DECLARE @DatabaseName nvarchar(50)
DECLARE @SPId int
DECLARE @SQL nvarchar(100)
 
--SET @DatabaseName = N'DatabaseName'
 SET @DatabaseName = DB_NAME()
 DECLARE my_cursor CURSOR FAST_FORWARD FOR
 SELECT SPId FROM MASTER..SysProcesses
 WHERE DBId = DB_ID(@DatabaseName) AND SPId <> @@SPId
 
OPEN my_cursor
 
FETCH NEXT FROM my_cursor INTO @SPId
 
WHILE @@FETCH_STATUS = 0
 BEGIN
  SET @SQL = 'KILL ' + CAST(@SPId as nvarchar(10))
  print @SQL
  EXEC sp_executeSQL @SQL
  --KILL @SPId -- Causing Incorrect syntax near '@spid'.
 
 FETCH NEXT FROM my_cursor INTO @SPId
 END
 
CLOSE my_cursor
DEALLOCATE my_cursor 

2. ปิดหน้าต่างของ Query ด้านบนทิ้ง แล้วสามารถใช้งานเช่น Restore database ได้เลย

การใช้งานตัวแปล TABLE (DECLARE TABLE )

เราสามารถประกาศตัวแปล Table เก็บข้อมูลและใช้งานข้อมูลที่เก็บเข้าได้ และเมื่อใช้งานเสร็จตัวแปลก็จะหายไป
ไม่เปลืองฐานข้อมูลของเรา

// sql code
DECLARE @tempTable TABLE (
Indextest varchar(13)
,Qty float
,Name Varchar(50)
,chkFraction bit DEFAULT (0))

INSERT INTO @tempTable 
values('121212',10,'name1',0)


SELECT * FROM @tempTable 

การใช้งาน Cystal Report VS2005



23 กรกฎาคม 2554

การใช้งาน CURSOR (เพื่อ Loop ข้อมูลที่ Select มาได้)

// sql code
---- ประกาสตัวแปลเพื่อเก็บค่าแต่ละรอบ
DECLARE @Tag_No varchar(50)

DECLARE SharpStockOver_cursor CURSOR FOR
select Tag_No
from tb_LocationBalance
group by Tag_No
having count(Tag_No) > 1

---- เริ่มต้นเป็นค่าว่าง
set @Tag_No = ''  

----เปิดให้ Corsur ทำงาน
OPEN SharpStockOver_cursor
---- เริ่มต้นทำงาน Row แรก และเก็บค่าในตัวแปล
FETCH NEXT FROM SharpStockOver_cursor
INTO @Tag_No
---- วนลูปจนหมด Row
WHILE (@@FETCH_STATUS = 0)
Begin
 ---- Begin Action ----
 DELETE tb_LocationBalance where Tag_No = @Tag_No
 ---- End Action ----
        ---- ทำงาน Row ต่อไป และเก็บค่าในตัวแปล
 FETCH NEXT FROM SharpStockOver_cursor
 INTO @Tag_No
END
CLOSE SharpStockOver_cursor
DEALLOCATE SharpStockOver_cursor 

22 กรกฎาคม 2554

แปลงทศนิยม SQL SERVER

การแปลงทศนิยมเราสามารถใช้แค่ ROUND ได้ แต่เข้าถึงระดับ Column ในดาต้าเบสเราต้องมีการ CAST เข้ามาช่วยส่วนเรื่องของ
ความสามารถของทั้งสองฟังก์ชั่นรบกวนไปศึกษาเอาเองนะครับ

// sql code
SELECT CAST(ROUND((Filed_Name),2) AS Numeric(18,2))
FROM  Table_Name

21 กรกฎาคม 2554

สีเสื้อประจำวันเกิด

เอามาฝากสำหรับคนต้องการความเชื่อมั่นและมั่นใจ
วันไหน ใส่เสื้อผ้าสีอะไร ถึงจะดี มีโชคลาภ มีคนอุปถัมภ์ค้ำชู หรือใส่แล้วซวย เป็นกาลกิณี มาเช็คได้ที่ตารางนี้
วันเดช

อำนาจ สิทธิ์
ศรี (ศิริมงคล)
โชคลาภ

เงินทอง
มนตรี

ผู้อุปถัมภ์ช่วยเหลือ
กาลกิณี

อับโชค ไม่ดี
จันทร์เขียวม่วง

เม็ดมะปราง
ฟ้าน้ำเงินสดแดง
อังคารม่วงส้มแดงเหลืองขาว
พุธส้มแสดดำน้ำตาลแก่เทาแก่เหลืองชมพู
พฤหัสบดีฟ้าน้ำเงินแดงเขียวม่วง
ศุกร์เหลืองขาวชมพูส้มแสดดำน้ำเงินเข้มเทาแก่
เสาร์ดำน้ำเงินเข้มน้ำตาลน้ำเงินสดฟ้าชมพูเขียว
อาทิตย์ชมพูเขียวดำน้ำเงินเข้มน้ำตาลฟ้าน้ำเงินสด

การทำ Syntax Highlighter ใน blog

// sql code
SELECT * FROM Table_Name
WHERE Column_Name not in ('Test')

8 กรกฎาคม 2554

การเคลียร์ log ในดาต้าเบส (Clear log)

          ผมเคยทำการ Backup ฐานข้อมูลจากลูกค้าท่านหนึ่ง ปรากฏว่าได้ขนาด 8 GB ครับ
งงมาก เลยทำการเครียร์ log ในฐานข้อมูลแล้วทำการ Backup ใหม่ ปรากฏว่าได้ขนาดเหลือ 100 MB
หวังว่า Query นี้น่าจะเกิดประโยชน์ต่อผู้ใช้งาน

// sql code
backup log Database_Name with no_log
backup log Database_Name with truncate_only
dbcc shrinkdatabase(Database_Name ,1)

เริ่มต้นใช้งาน Windows Mobile Emulator

6 กรกฎาคม 2554

Row_Number (หมายเลขบรรทัดของการ query)

MS SQL Server 2000

// sql code
SELECT top 10  (SELECT COUNT(*) FROM ms_Customer as c2
          WHERE c2.Customer_Index <= c1.Customer_Index) as myNo, c1.*
FROM ms_Customer as c1
MS SQL Server 2005
// sql code
SELECT top 10 Row_Number() OVER(ORDER BY Customer_Index) AS RowNo,*
FROM ms_Customer

26 มีนาคม 2554

การ Set CultureInfo ( ทำให้ทั้งระบบใช้รูปแบบเวลาเดียวกัน )



            หลายคนมีปัญหาเรื่องการที่เวลาบันทึกข้อมูลลงที่ฐานข้อมูลแล้วระบบบอกว่ารูปแบบของเวลาไม่ถูกต้อง ปัญหาเหล่านั้นจะหมดไป เมื่อเราทำการ Set CultureInfo แล้วระบบเราจะใช้รูปแบบเวลานั่นทั้งโปรแกรม
        * แต่ถ้ามีการเปิด Thread ใหม่ต้องทำการ Set ค่านี้ใหม่ด้วยใน Function นั้น ๆ เช่น Function ที่ใช้ BackgroundWorker ต้องทำ Set CultureInfo ใน Function ใหม่ด้วยจ้า

Imports System.Globalization
Imports System.Threading

Private Sub Login_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Try
        Thread.CurrentThread.CurrentCulture = New CultureInfo("en-GB")
    Catch ex As Exception
        W_MSG_Error(ex.Message)
    End Try
End Sub

25 มีนาคม 2554

คีย์ลัด ( Shortcut Keys ) ( SQL Server Query Analyzer )

SQL Server - Query Analyzer Shortcut Keys




SHIFT+F2                                  -- Move to previous bookmark.
ALT+BREAK                             -- Cancel a query.
CTRL+O                                    -- Connect.
CTRL+F4                                   -- Disconnect.
CTRL+F4                                   -- Disconnect and close child window.
ALT+F1                                      -- Database object information.

21 มีนาคม 2554

ตั้งค่าเริ่มต้นไอดีในคอลั่ม SQL Server ใหม่ ( Reset Identity column in SQL Server )

หลายคนประสบปัญหาเพราะว่าเมื่อเราเคลีย์ข้อมูลในฐานข้อมูลหมดแล้วแต่
ค่ารันของไอดีไม่ได้เริ่มใหม่ สั่ง Run ตัวนี้เลยครับ

// sql code
DBCC CHECKIDENT('Table_Name', RESEED, 0)