<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>minib0x: more than a box : including IT, website, craft, felt, handmade &#187; visual studio</title>
	<atom:link href="http://minib0x.com/blog/tag/visual-studio/feed/" rel="self" type="application/rss+xml" />
	<link>http://minib0x.com/blog</link>
	<description>minib0x: more than a box</description>
	<lastBuildDate>Fri, 11 May 2012 09:47:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>ฝึกงาน #8</title>
		<link>http://minib0x.com/blog/2009/04/internship-8/</link>
		<comments>http://minib0x.com/blog/2009/04/internship-8/#comments</comments>
		<pubDate>Thu, 16 Apr 2009 13:50:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Computer]]></category>
		<category><![CDATA[Internship]]></category>
		<category><![CDATA[stored procedure]]></category>
		<category><![CDATA[visual studio]]></category>

		<guid isPermaLink="false">http://minib0x.com/blog/?p=518</guid>
		<description><![CDATA[[16.04.2009] หลังจากหยุดยาวช่วงสงกรานต์ไป ทำให้วันนี้ขี้เกียจไปฝึกงาน &#62;,&#60;~ เนื่องจาก เหตุการณ์ม็อบเสื้อแดง ท่านนายกจึงประกาศให้เป็นวันหยุดราชการ แต่ไอ้เรามันบริษัทเอกชน ก็ต้องไปทำงานตามปกติ แต่ก็มีดีอย่างนึงคือ รถไม่ติด ^^&#8221; วันนี้ช่วงเช้าก็นั่งเบื่อ ก็หาเว็บที่สอน OOP+C# มานั่งอ่านเล่น เจอเว็บนี้ http://thai-cs.spaces.live.com ดีเหมือนกัน เอาไว้จะไปยืมหนังสือมาอ่าน (ไม่มีเงินซื้อเองแล้ว &#8211; -&#8221;) ถึงช่วงบ่าย พี่ก็ถามว่า รู้จัก Stored Procedure มั้ย เหอๆๆ ก็ตอบไปว่า ไม่รู้จัก งานเลยเข้า พี่ก็เลยให้หาว่า คืออะไร ใช้ยังไง ให้เวลา 1 ชั่วโมง ก็ให้พี่ google ช่วย &#8211; -&#8221; ได้ความว่า stored procedure เป็นการเขียน code เป็น procedure โดยปกติแล้ว code เหล่านี้จะอยู่ฝั่ง client แต่การเขียนแบบ stored procedure นั้น code เหล่านี้จะอยู่ฝั่ง database มีประโยชน์ คือ ช่วยให้เร็วกว่าการ query ธรรมดา เนื่องจาก การ query แต่ละครั้งจะต้องไปดึงข้อมูลออกมาทั้งหมด แต่การเขียนแบบ stored procedure จะทำงานฝั่ง [...]]]></description>
			<content:encoded><![CDATA[<p>[16.04.2009]</p>
<p>หลังจากหยุดยาวช่วงสงกรานต์ไป ทำให้วันนี้ขี้เกียจไปฝึกงาน &gt;,&lt;~</p>
<p>เนื่องจาก เหตุการณ์ม็อบเสื้อแดง ท่านนายกจึงประกาศให้เป็นวันหยุดราชการ</p>
<p>แต่ไอ้เรามันบริษัทเอกชน ก็ต้องไปทำงานตามปกติ</p>
<p>แต่ก็มีดีอย่างนึงคือ รถไม่ติด ^^&#8221;</p>
<p>วันนี้ช่วงเช้าก็นั่งเบื่อ ก็หาเว็บที่สอน OOP+C# มานั่งอ่านเล่น</p>
<p>เจอเว็บนี้ <a href="http://thai-cs.spaces.live.com">http://thai-cs.spaces.live.com</a> ดีเหมือนกัน</p>
<p>เอาไว้จะไปยืมหนังสือมาอ่าน (ไม่มีเงินซื้อเองแล้ว &#8211; -&#8221;)</p>
<p><br class="spacer_" /></p>
<p>ถึงช่วงบ่าย พี่ก็ถามว่า รู้จัก <span style="color: #ffcc00;"><span style="font-size: medium;"><strong>Stored Procedure</strong></span></span> มั้ย</p>
<p>เหอๆๆ ก็ตอบไปว่า ไม่รู้จัก งานเลยเข้า</p>
<p>พี่ก็เลยให้หาว่า คืออะไร ใช้ยังไง</p>
<p>ให้เวลา 1 ชั่วโมง</p>
<p>ก็ให้พี่ google ช่วย &#8211; -&#8221; ได้ความว่า</p>
<p><strong>stored procedure เป็นการเขียน code เป็น procedure โดยปกติแล้ว code เหล่านี้จะอยู่ฝั่ง client <br />
 แต่การเขียนแบบ stored procedure นั้น code เหล่านี้จะอยู่ฝั่ง database <br />
 <span style="text-decoration: underline;">มีประโยชน์</span> คือ ช่วยให้เร็วกว่าการ query ธรรมดา เนื่องจาก การ query แต่ละครั้งจะต้องไปดึงข้อมูลออกมาทั้งหมด แต่การเขียนแบบ stored procedure จะทำงานฝั่ง server ข้อมูลที่ส่งกลับมาให้ฝั่ง client จึงมีน้อยกว่า<br />
 ข้อดีอีกอย่างก็คือ ในการ query ข้อมูลออกมาผิดคอลัมน์ (ไม่ว่าจะด้วยเหตุผลอะไรก็ตาม) ปกติแล้ว เราต้องทำการแก้ไขที่ตัว code (ซึ่งบางครั้งอาจจะวุ่นวาย &#8211; -&#8221;) แต่การทำ stored procedure นั้น เราก็แก้ในส่วน stored procedure ไม่ต้องไปแตะส่วนที่เป็น code เลย</strong></p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p><strong>อ่านเพิ่มเติม</strong></p>
<ul>
<li>http://www.narisa.com/forums/index.php?showtopic=103</li>
<li>http://www.codetoday.net/Default.aspx?g=posts&amp;t=163</li>
<li>http://greatfriends.biz/webboards/msg.asp?id=43381</li>
<li>http://www.expert2you.com/view_question2.php?q_id=9247</li>
<li>http://www.narisa.com/forums/index.php?autocom=blog&amp;blogid=6&amp;cmd=showentry&amp;eid=6</li>
<li>http://obtheair.exteen.com/20060926/sql-in-code-vs-stored-procedure</li>
<li>http://thai-developer.6te.net/article.php?qrID=53</li>
<li>http://juuier.blogspot.com/2008/11/store-procedure-sqlserver.html</li>
</ul>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>เมื่อศึกษาแล้วก็ได้ทดลองเขียน code จาก northwind (อีกแล้ว)</p>
<p>โดยคราวนี้ให้ทำเหมือน Project ที่แล้ว แต่ให้เปลี่ยนในส่วนของ DAO จากเดิมเป็น query</p>
<p>ให้เปลี่ยนเป็นแบบ stored procedure</p>
<p>ก็ได้ทดลองทำการติดต่อผ่าน sql server ในรูปของ stored procedure</p>
<p>ทำเสร็จก็กลับบ้าน</p>
]]></content:encoded>
			<wfw:commentRss>http://minib0x.com/blog/2009/04/internship-8/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ฝึกงาน #7</title>
		<link>http://minib0x.com/blog/2009/04/internship-7/</link>
		<comments>http://minib0x.com/blog/2009/04/internship-7/#comments</comments>
		<pubDate>Wed, 15 Apr 2009 09:43:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Computer]]></category>
		<category><![CDATA[Internship]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[get]]></category>
		<category><![CDATA[object]]></category>
		<category><![CDATA[set]]></category>
		<category><![CDATA[visual studio]]></category>

		<guid isPermaLink="false">http://minib0x.com/blog/?p=501</guid>
		<description><![CDATA[[10.04.2009] เนื่องจาก โดยปกติแล้ว จะเขียนบันทึกการฝึกงานที่ทำงาน &#8211; -&#8221; เพราะว่าเลิกงาน กลับมาหอ ก็ไม่อยากเปิดคอมแล้ว วันๆ อยู่แต่หน้าคอม เบื่อ แต่หลังๆ มานี่ ไม่มีเวลาว่างจะอัพเลย ก็เลยต้องดองไว้นานหน่อย มาเริ่มกันเลยดีกว่า วันนี้ (นายกประกาศให้เป็นวันหยุดราชการ แต่บริษัทเราไม่หยุด เพราะเป็นเอกชน) ก็มาทำงานปกติ ม็อบเสื้อแดงก็ยังไม่สงบดีนัก แต่ก็ต้องมาทำงาน งานวันนี้ ก็คือ พี่ให้ฝึกเขียน console application โดยใช้ database northwind (เหมือนเดิม) โดยเขียนแบบ MVC (Model View Controller) ซึ่งประกอบไปด้วย &#8211; PLS &#8211; BLM &#8211; DAO โดยวันนี้ ได้ทดลองใช้ source safe คือเขียนร่วมกันกับเพื่อนในทีมอีกคน (ชื่อหลี) ก็แบ่งกันตารางกันว่าใครจะจัดการข้อมูลตารางไหนบ้าง จากนั้นก็ลงมือเขียน หลักๆ ก็คือ สร้างโปรเจคย่อยๆ ดังนี้ PLS จะเป็นส่วนที่แสดงให้ผู้ใช้เห็น ในที่นี้คือ เป็นส่วนแสดง menu ให้ผู้ใช้เลือก BLM ในที่นี้ทำหน้าที่แค่เชื่อมต่อข้อมูลระหว่างชั้น PLS และ DAO (เนื่องจากยังไม่มี Bussiness Rule ใดๆ เลย) DAO ทำหน้าที่คิวรี่ข้อมูลออกมา [...]]]></description>
			<content:encoded><![CDATA[<p>[10.04.2009]</p>
<p>เนื่องจาก โดยปกติแล้ว จะเขียนบันทึกการฝึกงานที่ทำงาน &#8211; -&#8221;</p>
<p>เพราะว่าเลิกงาน กลับมาหอ ก็ไม่อยากเปิดคอมแล้ว วันๆ อยู่แต่หน้าคอม เบื่อ</p>
<p>แต่หลังๆ มานี่ ไม่มีเวลาว่างจะอัพเลย ก็เลยต้องดองไว้นานหน่อย</p>
<p>มาเริ่มกันเลยดีกว่า</p>
<p>วันนี้ (นายกประกาศให้เป็นวันหยุดราชการ แต่บริษัทเราไม่หยุด เพราะเป็นเอกชน)</p>
<p>ก็มาทำงานปกติ ม็อบเสื้อแดงก็ยังไม่สงบดีนัก แต่ก็ต้องมาทำงาน</p>
<p><br class="spacer_" /></p>
<p><span style="color: #ff0000;"><span style="font-size: medium;"><strong>งานวันนี้ </strong></span></span></p>
<p>ก็คือ พี่ให้ฝึกเขียน console application โดยใช้ database northwind (เหมือนเดิม)</p>
<p>โดยเขียนแบบ MVC (Model View Controller) ซึ่งประกอบไปด้วย<br />
 &#8211; PLS<br />
 &#8211; BLM<br />
 &#8211; DAO<br />
 โดยวันนี้ ได้ทดลองใช้ source safe คือเขียนร่วมกันกับเพื่อนในทีมอีกคน (ชื่อหลี)</p>
<p>ก็แบ่งกันตารางกันว่าใครจะจัดการข้อมูลตารางไหนบ้าง</p>
<p>จากนั้นก็ลงมือเขียน</p>
<p>หลักๆ ก็คือ สร้างโปรเจคย่อยๆ ดังนี้</p>
<ul>
<li>PLS จะเป็นส่วนที่แสดงให้ผู้ใช้เห็น ในที่นี้คือ เป็นส่วนแสดง menu ให้ผู้ใช้เลือก</li>
</ul>
<ul>
<li>BLM ในที่นี้ทำหน้าที่แค่เชื่อมต่อข้อมูลระหว่างชั้น PLS และ DAO (เนื่องจากยังไม่มี Bussiness Rule ใดๆ เลย)</li>
</ul>
<ul>
<li>DAO ทำหน้าที่คิวรี่ข้อมูลออกมา แล้วส่งต่อไปให้ยัง BLM</li>
</ul>
<ul>
<li>Common ทำหน้าที่เป็น properties ในแต่ละ field ต่างๆ ของแต่ละ table</li>
</ul>
<p><span style="font-size: medium;"><span style="color: #ff0000;">สิ่งที่ได้จากวันนี้ </span></span></p>
<p><span style="color: #99cc00;"><strong>การสร้าง Object</strong></span></p>
<p style="padding-left: 30px;">Object obj = new Object();<br />
 การเรียก new Object(); มันจะไปจอง memory ส่วน obj นั้น เป็นเหมือนตัวชี้ไปที่ mem นั้นๆ<br />
 ดังนั้น สามารถ new Object(); ได้เลยแบบไม่ต้องมีตัวชี้ <br />
 (เพื่อความเข้าใจมากยิ่งขึ้น ดูจากการ Assign ค่าให้กับ Object)</p>
<p><span style="color: #99cc00;"><strong>การ Assign ค่าให้กับ Object สามารถทำได้ 2 แบบดังนี้</strong></span></p>
<p>1.<br />
 supplier.Add(new SupplierDo(){<br />
 Address = reader["Address"].ToString(),<br />
 City = reader["City"].ToString()<br />
 });</p>
<p>2.<br />
 SupplierDo supplierSample = new SupplierDo();<br />
 supplierSample.Address = reader["Address"].ToString();<br />
 ..<br />
 ..<br />
 ..<br />
 ..<br />
 supplier.Add(supplierSample);<br />
 โดยที่แบบที่ 1 จะสร้างตัว object ขึ้นมา ทำการ assign ค่า แล้ว List ก็ Add เข้าไปเลย<br />
 ส่วนแบบที่ 2 จะสร้าง object พร้อมกับชื่อเรียกตัวมัน ทำการ assign ค่า สั่งให้ List Add ชื่อเรียกนั้นๆ (ซึ่งชื่อเรียกนั้น เปรียบเสมือนตัวชี้ไปที่ object)</p>
<p><span style="color: #99cc00;"><strong>Set + Get</strong></span></p>
<p style="padding-left: 30px;">ใน java เราจะต้องเขียนเป็น method <br />
 แต่ใน C# ไม่ต้อง ให้มองว่าเป็น properties ตัวหนึ่ง<br />
 <span style="text-decoration: line-through;">(รายละเอียด เดี๋ยวมาเพิ่มให้)</span></p>
<p style="padding-left: 30px;">ตัวอย่างใน java</p>
<p><code> class Student {<br />
 private String name;<br />
 private double grade;<br />
 public String getName(){<br />
 return this.name;<br />
 }<br />
 public void setName(String name){<br />
 this.name = name;<br />
 }<br />
 public double getGrade() {<br />
 return this.grade; <br />
 }<br />
 public void setGrade(double grade) {<br />
 if(grade &lt; 0 || grade &gt; 4)<br />
 throws new Exception();<br />
 else<br />
 this.grade = grade;<br />
 }<br />
 }</code></p>
<p><code>class School {<br />
 public void displayGrade(){<br />
 Student s = new Student();<br />
 s.setName("Dew");<br />
 s.setGrade(4.0);<br />
 }<br />
 } </code></p>
<p style="padding-left: 30px;">ตัวอย่างใน c#</p>
<p><code> class Student {<br />
 private string _name;<br />
 public string Name {<br />
 get { return this._name; }         <br />
 set { this._name = value; } // value ในที่นี้ก็คือค่า Name นั่นแหละ<br />
 }<br />
 private double _grade;<br />
 public double Grade {         <br />
 get { return this._grade; }         <br />
 set {              <br />
 if(this._grade &lt; 0 || this._grade &gt; 4)                 <br />
 throws new Exception();<br />
 else                 <br />
 this._grade = value;  // value ในที่นี้ ก็คือค่า Grade นั่นแหละ         <br />
 }<br />
 }<br />
 }</code></p>
<p><code> class School {<br />
 public void displayGrade(){<br />
 Student s = new Student();<br />
 s.Name = Dew;         <br />
 s.Grade = 4.0;<br />
 }<br />
 }</code></p>
<p><strong>โดยที่ c# มันจะรู้เองว่าจะเรียกใช้ get หรือ set โดยดูที่ว่า ถ้ามีการ assign ค่าให้ (มีเครื่องหมาย = ) จะเรียกใช้ set ถ้าไม่ใช่ ก็จะเป็นการเรียกค่าออกมา ก็คือใช้ get </strong></p>
<p>** สำหรับ snippet ของ properties คือ พิมพ์ <strong>prop</strong> แล้วตามด้วย tab 2 ครั้ง</p>
<p><img title="snippet-prop-01" src="http://minib0x.com/blog/wp-content/uploads/2009/04/snippet-prop-01.jpg" alt="snippet-prop-01" width="521" height="193" /></p>
<p><img title="snippet-prop-02" src="http://minib0x.com/blog/wp-content/uploads/2009/04/snippet-prop-02.jpg" alt="snippet-prop-02" width="310" height="55" /></p>
<p>ตอนเย็น พี่ดิวสอน Basic C#</p>
<p><span style="font-size: small;"><strong>ส่วนประกอบของ Class</strong></span></p>
<ul>
<li><strong>Access Modifier</strong>
<ul>
<li>public : จะมองเห็นได้ทุกๆ class</li>
<li>private : จอมองเห็นเฉพาะ class ตัวมันเอง</li>
<li>protected : จะมองเห็น class ที่ inherit มาด้วย</li>
</ul>
</li>
<li><strong>Method</strong></li>
</ul>
<p style="padding-left: 60px;">[AccessModifier]{static}[ReturnType][MethodName](param){</p>
<p style="padding-left: 60px;">&#8230;</p>
<p style="padding-left: 60px;">}</p>
<ul>
<li><strong>Properties : </strong>ต่างจาก method ที่ ไม่รับค่า param</li>
</ul>
<p style="padding-left: 60px;">[AccessModifier]{static}[Type][PropName]{</p>
<p style="padding-left: 90px;">set { abc = value; }<br />
 get {return abc; }</p>
<p style="padding-left: 60px;">}</p>
<p style="padding-left: 60px;"><strong>Type : </strong>เป็นอะไรก็ได้ (เป็น obj ก็ได้)</p>
<p><span style="font-size: small;"><strong>static : </strong></span>ไม่ต้อง new, มี 1 เดียวเท่านั้น</p>
<p><span style="font-size: small;"><strong>constructor : </strong></span></p>
<p style="padding-left: 30px;">- จะถูกเรียกครั้งแรกครั้งเดียวที่มีการ new (จึงไม่สามารถเรียกใช้ได้)<br />
 &#8211; จะมีทุกๆ class<br />
 &#8211; ไม่สามารถ return ค่าใดๆ ได้ (เอาไว้เริ่มค่า)</p>
<p style="padding-left: 30px;">* เหมือน method คือรับ param ใดๆ มาก็ได้</p>
<p style="padding-left: 30px;">public [ClassName](){</p>
<p style="padding-left: 30px;">}</p>
<p style="padding-left: 30px;"> </p>
<p><strong>base</strong> -&gt; scope ของ class แม่ จะเห็น public, protected จะไม่สนใจ method class ตัวเอง<br />
 เรียก constructor ของ class แม่<br />
 <strong>this </strong>-&gt; scope class</p>
<p><br class="spacer_" /></p>
<p>(All code from P&#8217;Dew) : Training.zip</p>
]]></content:encoded>
			<wfw:commentRss>http://minib0x.com/blog/2009/04/internship-7/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ฝึกงาน # 6</title>
		<link>http://minib0x.com/blog/2009/04/internship-6/</link>
		<comments>http://minib0x.com/blog/2009/04/internship-6/#comments</comments>
		<pubDate>Wed, 15 Apr 2009 09:08:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Computer]]></category>
		<category><![CDATA[Internship]]></category>
		<category><![CDATA[Convert.ToInt32]]></category>
		<category><![CDATA[Int32.Parse]]></category>
		<category><![CDATA[try catch]]></category>
		<category><![CDATA[TryParse]]></category>
		<category><![CDATA[visual studio]]></category>

		<guid isPermaLink="false">http://minib0x.com/blog/?p=467</guid>
		<description><![CDATA[[09.04.2009] เนื่องจากวันนี้ตื่นสาย (มาก) ตื่นขึ้นมาตอน 8.20 จากนั้น รีบอาบน้ำ ไปถึงหมอชิต 8.50 (เริ่มงาน 9.00 &#8211; -&#8221;) กว่าจะถึงที่บริษัท ก็ 9.20 วันนี้ก็เลยเป็นวันแรก ที่ไปฝึกงานสาย ไหนๆ ก็สายละ เอากฎการฝึกงานของมหาลัยมาเตือนสติกันหน่อย ต้องฝึกไม่น้อยกว่า 240 ชั่วโมงทำการ และไม่น้อยกว่า 30 วันทำการ สายได้ไม่เกิน 5 วันทำการ ลากิจ ต้องลาไม่น้อยกว่า 2 วันทำการ และจะลาได้ไม่เกิน 5 วันทำการ (รวมลากิจและลาป่วย) แต่ถ้ามีความจำเป็นต้องลาเกินกว่านั้นให้เขียนคำร้องมายังคณะ เพื่อพิจารณาเป็นครั้งๆ ไป วันนี้ก็แก้ bug ของเมื่อวาน แล้วพี่ดิวก็เอาโค้ดที่พี่ทำมาให้ศึกษา ไฟล์ตัวอย่างของ P’ Dew : ObjectTutorial2.rar ภายในมี 3 project ได้แก่ ObjectDisplay (อธิบายคุณสมบัิและการเขียนแบบ object) StudentSample (เป็นโค้ดที่พี่ดิวเขียน โจทย์ Assignment เมื่อวานนี้) DatabaseSample (เป็นโค้ดที่ใช้ติดต่อกับ Database) ก็ให้มานั่งศึกษา แล้วลองปรับโค้ดของตัวเองใหม่ (เพราะว่าที่เขียนมันทุเรศมาก 555) ดูเพิ่มเติม แล้วมาทำ Assignment List อ้างอิง format [...]]]></description>
			<content:encoded><![CDATA[<p>[09.04.2009]</p>
<p>เนื่องจากวันนี้ตื่นสาย (มาก) ตื่นขึ้นมาตอน 8.20 จากนั้น รีบอาบน้ำ</p>
<p>ไปถึงหมอชิต 8.50 (เริ่มงาน 9.00 &#8211; -&#8221;) กว่าจะถึงที่บริษัท ก็ 9.20</p>
<p>วันนี้ก็เลยเป็นวันแรก ที่ไปฝึกงานสาย</p>
<p>ไหนๆ ก็สายละ เอา<span style="color: rgb(255, 0, 0);" mce_style="color: #ff0000;"><span style="font-size: large;" mce_style="font-size: large;"><b>กฎการฝึกงานของมหาลัย</b></span></span>มาเตือนสติกันหน่อย</p>
<ul>
<li>ต้องฝึก<span style="color: rgb(255, 153, 0);" mce_style="color: #ff9900;"><b>ไม่น้อยกว่า 240 ชั่วโมงทำการ</b></span><b><span style="color: rgb(255, 153, 0);" mce_style="color: #ff9900;"> และไม่น้อยกว่า 30 วันทำการ</span></b></li>
<li><span style="color: rgb(51, 204, 204);" mce_style="color: #33cccc;"><b>สายได้ไม่เกิน 5 วันทำการ</b></span></li>
<li>ลากิจ ต้องลาไม่น้อยกว่า 2 วันทำการ และจะ<b><span style="color: rgb(0, 128, 0);" mce_style="color: #008000;">ลาได้ไม่เกิน 5 วันทำการ (รวมลากิจและลาป่วย) </span></b>แต่ถ้ามีความจำเป็นต้องลาเกินกว่านั้นให้เขียนคำร้องมายังคณะ เพื่อพิจารณาเป็นครั้งๆ ไป</li>
</ul>
<p><br class="spacer_"></p>
<p>วันนี้ก็แก้ bug ของเมื่อวาน</p>
<p>แล้วพี่ดิวก็เอาโค้ดที่พี่ทำมาให้ศึกษา</p>
<p><i>ไฟล์ตัวอย่างของ P’ Dew : ObjectTutorial2.rar</i></p>
<p>ภายในมี 3 project ได้แก่</p>
<ul>
<li><b>ObjectDisplay </b>(อธิบายคุณสมบัิและการเขียนแบบ object)</li>
<li><b>StudentSample</b> (เป็นโค้ดที่พี่ดิวเขียน โจทย์ Assignment เมื่อวานนี้)</li>
<li><b>DatabaseSample</b> (เป็นโค้ดที่ใช้ติดต่อกับ Database)</li>
</ul>
<p>ก็ให้มานั่งศึกษา แล้วลองปรับโค้ดของตัวเองใหม่ (เพราะว่าที่เขียนมันทุเรศมาก 555)</p>
<p>ดูเพิ่มเติม แล้วมาทำ Assignment</p>
<ul>
<li>List <a href="http://www.c-sharpcorner.com/UploadFile/camurphy/csharpLists03302006170209PM/csharpLists.aspx" mce_href="http://www.c-sharpcorner.com/UploadFile/camurphy/csharpLists03302006170209PM/csharpLists.aspx">อ้างอิง</a></li>
<li>format string <a href="http://tidno1.exteen.com/20050609/c-tutorial-5-switch-case-format-string" mce_href="http://tidno1.exteen.com/20050609/c-tutorial-5-switch-case-format-string">อ้างอิง</a></li>
<li>try&#8230;catch</li>
</ul>
<p><br class="spacer_"></p>
<p><span style="color: rgb(0, 0, 255);" mce_style="color: #0000ff;"><b>Snippet </b></span></p>
<p>ความรู้ใหม่ที่ได้จากการฝึกงานครั้งนี้ คือ Snippet ซึ่งเป็นการพิมพ์คำสั่งอย่างรวดเร็ว <br />
 เช่น เราต้องการพิมพ์ Console.WriteLine(); เราก็พิมพ์แค่ cw จากนั้นกด tab 2 ครั้ง</p>
<p>snippet ยังมีอีกหลายตัว ให้สังเกตจากรูป&nbsp; ซึ่งอยู่หน้าคำสั่งที่เราต้องการ <img title="snippet_icon" src="http://minib0x.com/blog/wp-content/uploads/2009/04/snippet_icon.jpg" mce_src="http://minib0x.com/blog/wp-content/uploads/2009/04/snippet_icon.jpg" alt="snippet_icon" width="16" height="16"></p>
<p style="text-align: center;" mce_style="text-align: center;"><img class="aligncenter" title="snippet_cw" src="http://minib0x.com/blog/wp-content/uploads/2009/04/snippet_cw.jpg" mce_src="http://minib0x.com/blog/wp-content/uploads/2009/04/snippet_cw.jpg" alt="snippet_cw" width="417" height="193"></p>
<p><br class="spacer_"></p>
<p><span style="color: rgb(0, 0, 255);" mce_style="color: #0000ff;"><b>การแปลงค่า String -&gt; ตัวเลข</b></span></p>
<p>เนื่องจากใน assignment ต้องมีการดักว่าข้อมูลที่ใส่ต้องเป็น ตัวเลข เท่านั้น วิธีทำก็มี 2 แบบ</p>
<p><b>1. ใช้ try&#8230;catch</b></p>
<p style="padding-left: 30px;" mce_style="padding-left: 30px;"><span style="color: rgb(255, 153, 0);" mce_style="color: #ff9900;"> <code> try{<br />
 // ไม่เกิด error จะทำในนี้<br />
 }catch{<br />
 // เกิด error จะมาทำในนี้<br />
 }</code></span></p>
<p><b>2. ใช้ TryParse</b></p>
<p style="padding-left: 30px;" mce_style="padding-left: 30px;"><span style="color: rgb(255, 153, 0);" mce_style="color: #ff9900;"> <code> double num;<br />
 string str;<br />
 bool isNum = double.TryParse(str, out num);<br />
 if (isNum){<br />
 // ถ้าเป็นตัวเลข<br />
 }else{<br />
 // ถ้าไม่เป็นตัวเลข<br />
 }</code></span></p>
<p>ถ้าใช้ TryParse จะเร็วกว่า try&#8230;catch เนื่องจากมันไม่ต้องเก็บ exception <br />
 แค่ return true, false เท่านั้น แต่ถ้าไม่รู้ว่ามี method TryParse ก็ใช้ try&#8230;catch ไป<br />
 ก็ง่ายดี ^^</p>
<p>อ่านเพิ่มเติม <a href="http://www.greatfriends.biz/webboards/msg.asp?b=SURREALIST&amp;id=61434" mce_href="http://www.greatfriends.biz/webboards/msg.asp?b=SURREALIST&amp;id=61434">ข้อแตกต่างระหว่าง Convert.To&#8230;(&#8230;.) กับ DataType.Parse(&#8230;)</a></p>
<p>(จาก link ด้านบน )</p>
<p><b>Int32.Parse(str) กับ Convert.ToInt32(str) ต่างกันที่<br />
 ถ้า str เป็นค่า null แล้ว Int32.Parse(str) จะ throws Exception แต่ ถ้า Convert.ToInt32(str) จะ return ค่า 0 แทนการ throws Exception</b></p>
<p>ปล. พี่ดิวจะนัดสอน C# ตอนเย็นทุกวัน (ถึงแม้จะเคยเรียนมาบ้างแล้ว แต่การที่พี่สอน ก็อาจจะทำให้ได้ความรู้หรือเทคนิคอะไรเล็กๆ น้อยๆ ที่เรายังไม่เคยรู้มาก่อนเลยก็ได้ ^^ เริ่มเย็นพรุ่งนี้)</p>
<p><br class="spacer_"></p>
<p>ตอนเย็น คึกคักมาก เนื่องจากม็อบเสื้อแดง ทำให้หลายๆ คนกังวลว่าจะกลับบ้านยังไง &#8211; -&#8221;</p>
<p>ปล. Publish ล่าช้าไปหน่อย 555</p>
]]></content:encoded>
			<wfw:commentRss>http://minib0x.com/blog/2009/04/internship-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>มาใส่ icon ให้โปรแกรมตัวเอง</title>
		<link>http://minib0x.com/blog/2008/09/icon-in-myprogram/</link>
		<comments>http://minib0x.com/blog/2008/09/icon-in-myprogram/#comments</comments>
		<pubDate>Sun, 14 Sep 2008 11:54:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Computer]]></category>
		<category><![CDATA[icon]]></category>
		<category><![CDATA[visual studio]]></category>

		<guid isPermaLink="false">http://meawznoy.wordpress.com/?p=188</guid>
		<description><![CDATA[อัพให้พี่ชาย&#8230; ใส่ icon ให้โปรแกรมที่ตัวเองเขียน โดยใช้โปรแกรม Visual Studio 2005 ทำดังนี้ 1. เปิด project ตัวเองขึ้นมา 2. ที่แถบ Solution Explorer ให้คลิกขวาที่ชื่อ project เลือก Properties 3. เลือกแถบ Application 4. ที่ Icon ให้กด Browse.. เพื่อเลือกไฟล์ที่จะให้เป็น icon 5. เลือกไฟล์ icon เป็นอันเสร็จเรียบร้อย &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; มีเว็บ free icon มาฝาก &#8211; FreeIconDownload &#8211; FastIcon]]></description>
			<content:encoded><![CDATA[<p>อัพให้พี่ชาย&#8230;</p>
<p>ใส่ icon ให้โปรแกรมที่ตัวเองเขียน โดยใช้โปรแกรม Visual Studio 2005 ทำดังนี้</p>
<p>1. เปิด project ตัวเองขึ้นมา</p>
<p>2. ที่แถบ Solution Explorer ให้คลิกขวาที่ชื่อ project เลือก Properties</p>
<p><a href="http://minib0x.com/blog/wp-content/uploads/2008/09/proj-01.png"><img title="proj-01" src="http://minib0x.com/blog/wp-content/uploads/2008/09/proj-01.png" alt="proj-01" width="290" height="484" /></a></p>
<p>3. เลือกแถบ Application<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/proj-02.png"><img title="proj-02" src="http://minib0x.com/blog/wp-content/uploads/2008/09/proj-02.png" alt="proj-02" width="350" height="89" /></a></p>
<p>4. ที่ Icon ให้กด Browse.. เพื่อเลือกไฟล์ที่จะให้เป็น icon<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/proj-03.png"><img title="proj-03" src="http://minib0x.com/blog/wp-content/uploads/2008/09/proj-03.png" alt="proj-03" /></a></p>
<p>5. เลือกไฟล์ icon เป็นอันเสร็จเรียบร้อย<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/proj-04.png"><img title="proj-04" src="http://minib0x.com/blog/wp-content/uploads/2008/09/proj-04.png" alt="proj-04" width="350" height="228" /></a></p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
 มีเว็บ free icon มาฝาก<br />
 &#8211; <a href="http://www.freeiconsdownload.com">FreeIconDownload</a><br />
 &#8211; <a href="http://fasticon.com/freeware/">FastIcon</a></p>
]]></content:encoded>
			<wfw:commentRss>http://minib0x.com/blog/2008/09/icon-in-myprogram/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Crystal Report in Visual Studio</title>
		<link>http://minib0x.com/blog/2008/09/crystal-report-visual-studio/</link>
		<comments>http://minib0x.com/blog/2008/09/crystal-report-visual-studio/#comments</comments>
		<pubDate>Sun, 07 Sep 2008 12:32:57 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Computer]]></category>
		<category><![CDATA[crystal report]]></category>
		<category><![CDATA[visual studio]]></category>

		<guid isPermaLink="false">http://meawznoy.wordpress.com/?p=119</guid>
		<description><![CDATA[เหตุเนื่องมาจาก พี่ชายต้องการทำ Crystal Report ก็เลยเขียน blog เกี่ยวกับเรื่องนี้ซะเลย&#8230; Crystal Report เป็นเครื่องมือที่ใช้ในการสร้างรายงาน เพื่อแสดงผลข้อมูลในรูปแบบรายงานโดยใช้ข้อมูลจากฐานข้อมูล ขั้นตอนมีดังนี้ 1. คลิกที่เมนู Project &#62; Add New Item&#8230; 2.เลือก Crystal Report 3.ตั้งชื่อ Report 4.คลิกปุ่ม Add 5.ที่หน้าต่าง Crystal Reports Gallery ให้เลือก Using The Report Wizard 6.ที่ช่อง Choose an Expert ให้เลือก Standard ซึ่งหมายถึง เราจะเลือกรูปแบบรายงานมาตรฐาน 7.คลิกปุ่ม OK 8.เลือกแหล่งข้อมูล (Data Source) ในที่นี้เรายังไม่ได้สร้าง Data Source ให้เลือกแห่งข้อมูล โดยดับเบิ้ลคลิกที่ Create New Connection &#62; OLE DB (ADO) 9.ในหน้าต่าง OLE DB (ADO) ให้เลือก Microsoft Jet 4.0 OLE DB Provider 10.คลิกปุ่ม next 11.เลือกไฟล์จากฐานข้อมูลที่ต้องการ ที่ [...]]]></description>
			<content:encoded><![CDATA[<p>เหตุเนื่องมาจาก พี่ชายต้องการทำ <strong>Crystal Report </strong>ก็เลยเขียน blog เกี่ยวกับเรื่องนี้ซะเลย&#8230;</p>
<p>Crystal Report เป็นเครื่องมือที่ใช้ในการสร้างรายงาน เพื่อแสดงผลข้อมูลในรูปแบบรายงานโดยใช้ข้อมูลจากฐานข้อมูล<br />
 ขั้นตอนมีดังนี้</p>
<p>1. คลิกที่เมนู <strong>Project &gt; Add New Item&#8230;</strong> <br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-01.png"><img title="crystal-01" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-01.png" alt="crystal-01" width="329" height="169" /></a></p>
<p> 2.เลือก Crystal Report<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-02.png"><img title="crystal-02" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-02.png" alt="crystal-02" width="350" height="215" /></a></p>
<p> 3.ตั้งชื่อ Report</p>
<p> 4.คลิกปุ่ม Add</p>
<p> 5.ที่หน้าต่าง Crystal Reports Gallery ให้เลือก Using The Report Wizard<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-03.png"><img title="crystal-03" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-03.png" alt="crystal-03" width="350" height="426" /></a></p>
<p> 6.ที่ช่อง Choose an Expert ให้เลือก Standard ซึ่งหมายถึง เราจะเลือกรูปแบบรายงานมาตรฐาน</p>
<p> 7.คลิกปุ่ม OK</p>
<p> 8.เลือกแหล่งข้อมูล (Data Source) ในที่นี้เรายังไม่ได้สร้าง Data Source ให้เลือกแห่งข้อมูล โดยดับเบิ้ลคลิกที่ <strong>Create New Connection &gt; OLE DB (ADO)</strong><br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-04.png"><img title="crystal-04" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-04.png" alt="crystal-04" width="350" height="278" /></a></p>
<p> 9.ในหน้าต่าง OLE DB (ADO) ให้เลือก <strong>Microsoft Jet 4.0 OLE DB Provider</strong><br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-05.png"><img title="crystal-05" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-05.png" alt="crystal-05" width="350" height="359" /></a></p>
<p> 10.คลิกปุ่ม next</p>
<p> 11.เลือกไฟล์จากฐานข้อมูลที่ต้องการ ที่ Database Name:<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-06.png"><img title="crystal-06" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-06.png" alt="crystal-06" width="350" height="359" /></a></p>
<p> 12.คลิกปุ่ม Next</p>
<p> 13.จะมีการรายงานผลการเชื่อมต่อ ให้คลิกปุ่ม Finish<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-07.png"><img title="crystal-07" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-07.png" alt="crystal-07" width="350" height="359" /></a></p>
<p> 14.เลือกตารางที่เราต้องการนำข้อมูลไปแสดงในรายงาน<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-08.png"><img title="crystal-08" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-08.png" alt="crystal-08" width="350" height="278" /></a></p>
<p> 15.คลิกปุ่ม Next</p>
<p> 16.เลือกฟิลด์ข้อมูลที่จะนำไปแสดงในรายงาน<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-09.png"><img title="crystal-09" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-09.png" alt="crystal-09" width="350" height="278" /></a></p>
<p> 17.คลิก Next</p>
<p> 18.เลือกฟิลด์ที่จะจัดกลุ่มข้อมูลในรายงาน<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-10.png"><img title="crystal-10" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-10.png" alt="crystal-10" width="350" height="277" /></a></p>
<p> 19.คลิกปุ่ม Next</p>
<p> 20.ต่อไปเป็นการสรุปข้อมูลในรายงาน<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-11.png"><img title="crystal-11" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-11.png" alt="crystal-11" width="350" height="364" /></a></p>
<p> 21.คลิกปุ่ม Next</p>
<p> 22.เลือกตัวเลือกการเรียงลำดับข้อมูลภายในกลุ่ม<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-12.png"><img title="crystal-12" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-12.png" alt="crystal-12" width="350" height="278" /></a></p>
<p> 23.คลิกปุ่ม Next</p>
<p> 24.เพิ่มชาร์ตหรือกราฟเข้ามาในรายงาน ในที่นี้เราไม่เลือกให้คลิกปุ่ม Next เพื่อไปขั้นตอนต่อไป<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-13.png"><img title="crystal-13" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-13.png" alt="crystal-13" width="350" height="278" /></a></p>
<p> 25.เลือกฟิลด์ที่จะแสดง subset information ซึ่งเราจะไม่เลือก ให้คลิกปุ่ม Next เพื่อเข้าสู่ขั้นตอนต่อไป<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-14.png"><img title="crystal-14" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-14.png" alt="crystal-14" width="350" height="278" /></a></p>
<p> 26.เลือกสไตล์ของการนำเสนอรายงาน จากนั้นกด Finish<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-15.png"><img title="crystal-15" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-15.png" alt="crystal-15" width="350" height="278" /></a></p>
<p> 27.Visual Studio จะเพิ่มหน้ารายงานให้เราเห็น สามารถปรับแต่งรายงานได้<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-16.png"><img title="crystal-16" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-16.png" alt="crystal-16" width="350" height="210" /></a></p>
<p> 28.ต่อไปเราจะสร้างให้ Application ของเรา แสดงผลรายงาน โดยใช้เครื่องมือที่มีชื่อว่า <strong>Crystal<br />
 ReportViewer</strong> (สามารถเรียกใช้ได้จาก ToolBox)<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-17.png"><img title="crystal-17" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-17.png" alt="crystal-17" width="350" height="304" /></a></p>
<p> 29.เรียกรายงานที่เราไดสร้างไว้ด้วยการกำหนดที่ properties  <strong>ReportSource</strong><br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-18.png"><img title="crystal-18" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-18.png" alt="crystal-18" width="350" height="295" /></a></p>
<p> 30.ลอง Run ดู เสร็จเรียบร้อย<br />
 <a href="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-19.png"><img title="crystal-19" src="http://minib0x.com/blog/wp-content/uploads/2008/09/crystal-19.png" alt="crystal-19" width="350" height="193" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://minib0x.com/blog/2008/09/crystal-report-visual-studio/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

