กระทู้เก่าบอร์ด อ.Yeadram
        
           1,488   4		  
          
					  
		    URL.หัวข้อ / 
		    URL
        
        ต้องการให้ subform default รายการมากกว่า 1 รายการ      
    
      เนื่องจากการคีย์ข้อมูลแต่ละคร้้งจะมีรายการที่คล้ายๆกัน ดังนั้นจึงต้องการเพื่อใช้เป็นเทมเพลสในการคีย์ครั้งต่อไป (ตามรูปแนบ) รายการใดที่ไม่เหมือนก็อาจจะลบออกหรือเลือกรายการเพิ่มเองเล็กน้อย พอจะมีวิธีทำได้ไหมคับ    
    
  
				4 Reply in this Topic. Dispaly 1  pages and you are on page number 1 
				
        
    2 @R09060    
        
  
      ขอโทษครับอาจารย์ผมให้ข้อมูลน้อยไปหน่อยคับ
ต้องการคลิกปุ่ม "เทมเพลท" แล้ว ให้ไปเอาค่า id ที่ต้องการมาโชว์ จาก table "Income_deduct" โชว์ใน sub form1 เป็นเทมเพลทเพื่อความสะดวกไม่ต้องคลิกเลือกเองที่ละรายการ และสามารถเพิ่มรลดหรือแก้ไขรายการที่คีย์ได้ด้วย
 
    
    
  ต้องการคลิกปุ่ม "เทมเพลท" แล้ว ให้ไปเอาค่า id ที่ต้องการมาโชว์ จาก table "Income_deduct" โชว์ใน sub form1 เป็นเทมเพลทเพื่อความสะดวกไม่ต้องคลิกเลือกเองที่ละรายการ และสามารถเพิ่มรลดหรือแก้ไขรายการที่คีย์ได้ด้วย
 
    
        
    3 @R09063    
        
  
      วิธีที่เหมาะที่สุด คือการทำ unbound form
คือว่าให้คอนโทรลทุกๆ ตัวใน subform เป็นคอนโทรลแบบไม่ผูกกับฟิลด์ใดๆ เลย
1 ทุกคอนโทรลใน subform ต้องเป็น unbound
2 สร้างตาราง เก็บข้อมูลร่าง หรือข้อมูลชุดที่เป็น template นั่นแหละครับ
3 เมื่อคลิ๊กเลือก ค่า ID จากฟอร์มหลักก็เขียนโค้ดสั่งงานดังนี้
3.1 ไปเลือกข้อมูลจากตาราง template ที่สัมพันธ์กันกับ ID ที่ถูกเลือก
3.2 สั่งโปรยข้อมูลชุดดังกล่าวลงไปในคอนโทรลของ subform
4 ให้ผู้ใช้ ทำการแก้ไขข้อมูลได้ตามใจชอบ
5 ให้ผู้ใช้กดปุ่ม "บันทึกข้อมูล" ซึ่งปุ่มนี้ก็ฝั้งด้วยโค้ดสั่งงานดังนี้
5.1 ตรวจสอบชนิดข้อมูล รูปแบบข้อมูล ความถูกต้องของข้อมูลจากทุกๆ คอนโทรล ว่าถูกต้องตรงตามโครงสร้างของตารางของเราหรือไม่ ถ้าถูกต้องให้ทำข้อต่อไป ถ้าไม่ถูกต้องให้ย้อนไปข้อ 4
5.2 เก็บค่าข้อมูลจากทุกๆ คอนโทรล มาต่อเป็นสายอักขระ SQL แบบ Insert เพื่อนำข้อมูลเก็บในตารางที่ต้องการ เช่น insert into table1(field1, field2, ...) values(" & text1 & ", " & text2 & ", .......
5.2 สั่งรัน SQL ดังกล่าว
5.3 สั่งล้างข้อมูลจากทุกๆ คอนโทรลในฟอร์มย่อย และอาจจะมีการส่งสัญญาณให้ผู้ใช้ได้ทราบว่า "การบันทึกข้อมูล เรียบร้อยแล้ว"
    
  คือว่าให้คอนโทรลทุกๆ ตัวใน subform เป็นคอนโทรลแบบไม่ผูกกับฟิลด์ใดๆ เลย
1 ทุกคอนโทรลใน subform ต้องเป็น unbound
2 สร้างตาราง เก็บข้อมูลร่าง หรือข้อมูลชุดที่เป็น template นั่นแหละครับ
3 เมื่อคลิ๊กเลือก ค่า ID จากฟอร์มหลักก็เขียนโค้ดสั่งงานดังนี้
3.1 ไปเลือกข้อมูลจากตาราง template ที่สัมพันธ์กันกับ ID ที่ถูกเลือก
3.2 สั่งโปรยข้อมูลชุดดังกล่าวลงไปในคอนโทรลของ subform
4 ให้ผู้ใช้ ทำการแก้ไขข้อมูลได้ตามใจชอบ
5 ให้ผู้ใช้กดปุ่ม "บันทึกข้อมูล" ซึ่งปุ่มนี้ก็ฝั้งด้วยโค้ดสั่งงานดังนี้
5.1 ตรวจสอบชนิดข้อมูล รูปแบบข้อมูล ความถูกต้องของข้อมูลจากทุกๆ คอนโทรล ว่าถูกต้องตรงตามโครงสร้างของตารางของเราหรือไม่ ถ้าถูกต้องให้ทำข้อต่อไป ถ้าไม่ถูกต้องให้ย้อนไปข้อ 4
5.2 เก็บค่าข้อมูลจากทุกๆ คอนโทรล มาต่อเป็นสายอักขระ SQL แบบ Insert เพื่อนำข้อมูลเก็บในตารางที่ต้องการ เช่น insert into table1(field1, field2, ...) values(" & text1 & ", " & text2 & ", .......
5.2 สั่งรัน SQL ดังกล่าว
5.3 สั่งล้างข้อมูลจากทุกๆ คอนโทรลในฟอร์มย่อย และอาจจะมีการส่งสัญญาณให้ผู้ใช้ได้ทราบว่า "การบันทึกข้อมูล เรียบร้อยแล้ว"
        
    4 @R09075    
        
    
      ขอบคุณมากๆ ครับอาจารย์ ผมจะลองทำดูแล้วจะมารายงานผลให้ทราบคับ    
    
  
      Time: 0.6049s
    
      
		
------ ย้ายไปแล้วครับ -----