แสดงกระทู้

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - สันติสุข

หน้า: 1 ... 6 7 8 [9] 10 11 12 ... 29
145
หลักการคือ พอขึ้นเรคอร์ดใหม่ปั๊ป ก็เอา "กล่องเป้าหมาย" ของบรรทัดสุดท้ายมาใส่พร้อมบันทึกเรคอร์ดครับ ก็ใส่โค้ดนี้ลงไปใน Form_Current event procedure

โค๊ด: [Select]
Private Sub Form_Current()

    Dim RS As DAO.Recordset
   
    If Me.NewRecord Then
        Set RS = Me.RecordsetClone
        If RS.RecordCount > 0 Then
            RS.MoveLast
            If Not IsNull(RS("ชื่อฟิลด์กล่องเป้าหมาย")) Then
                Me.ชื่อเท็กซ์บ็อกซ์กล่องเป้าหมาย = RS("ชื่อฟิลด์กล่องเป้าหมาย")
                DoCmd.RunCommand acCmdSaveRecord
            End If
        End If
        RS.Close
    End If
           
End Sub

146
น่าเปลี่ยนจาก adOpenStatic ไปเป็น adOpenDynamic นะครับ

147
- ศึกษาระบบ VPN หรือไม่ก็ไปใช้ระบบ Dynamic DNS จากด้านบนครับ

ลูกค้าผมเคยเปิด VPN ให้ผมใช้ ลิงค์จาก Front-End ที่เครื่องผมที่บ้านไปยัง Back-End (.mdb) บนเครื่องลูกค้าปลายทางในต่างจังหวัด เร็วในระดับดีใช้ได้ แต่ค่าใช้จ่ายการทำ VPN คงสูงทีเดียว

แล้วขอสอบถามเพิ่มเติมว่า Router ทุกยี่ห้อจะมีให้ติดตั้ง Dynamic DNS ไหมครับ แล้วเมื่อ IP ของ Router เองเปลี่ยน มันจะส่งข้อมูลการเปลี่ยนแปลงนี้เพื่อไปอัพเดตที่ DDNS Service เองใช่ไหมครับ

148
ขอแทรกหน่อยครับ ดูแล้วเหมือนว่า TerminatedDate จะขึ้นกับ Contractor เพียงอย่างเดียว ไม่ได้ขึ้นกับ WorkID เลย ดังนั้น TerminatedDate ควรไปอยู่ในเทเบิลของ Contractor มากกว่าหรือไม่

149
ห้อง MS Access / : โปรแกรม Access error Query " is corrupt
« เมื่อ: 21 พ.ย. 62 , 11:37:20 »
ลิงค์ที่ให้มาคือตัวที่ก่อให้เกิดปัญหาไม่ใช่หรือ ไม่ใช่ตัวแก้ปัญหา ยกเว้นใน Office 2016 ที่มีลิงค์ไปหาตัวแก้ปัญหาอีกที แต่ก็ต้องไม่ใช่ Office ประเภท Click-To-Run ด้วย

151
ผมไม่ค่อยแน่ใจถึงสิ่งที่ต้องการ  แต่เอาเป็นว่า ถ้าต้องรวมตาม [place] และ [product] เดียวกัน ก็แก้ส่วน sum โดยเพิ่มเงื่อนไข and เข้าไปในส่วนของ where ตามโค้ดข้างล่างนี้ แต่ถ้าต้องมีเงื่อนไขฟิลด์อื่นเพิ่มเติม ก็ทำในลักษณะเดียวกัน คือเพิ่ม and เข้าไปอีกครับ

select T1.*,(select sum(T3.Inboxes) from [In] as T3 where (T3.place = T1.place) and (T3.product = T1.product)) as SumOfBoxin
from [In] as T1
where T1.[date] = (select max(T2.[date]) from [In] as T2 where T2.place = T1.place)

ยังไงก็ทดสอบผลลัพธ์กับข้อมูลเยอะๆ เพื่อดูว่าถูกต้องหรือไม่ด้วย

152
เปลี่ยนโหมดคิวรี่จาก Design View ไปเป็น SQL View แล้วเขียนคำสั่งนี้ลงไปแทนครับ

select T1.*, (select sum(T3.Inboxes) from [In] as T3 where T3.place = T1.place) as SumOfBoxin
from [In] as T1
where T1.[date] = (select max(T2.[date]) from [In] as T2 where T2.place = T1.place)

153
ไม่แน่ใจว่าระบบคุณสามารถ Uninstall ตัวอัพเดตได้หรือไม่  ถ้าได้ก็ลองดูครับ  ไปที่ Control Panel > Programs and Features > View Installed Updates

154
1. กลับไปที่ภาพที่ 2 ในคำถามแรก วันที่ล่าสุดที่ต้องการคือวันที่เท่าไหร่ และความหมาของคำว่า "ล่าสุด" คืออะไร วันที่มีค่ามากสุดของ Place นั้นๆ หรือ วันที่มีค่ามากสุดก่อนวันปัจจุบันสำหรับ Place นั้นๆ หรืออะไร ?

2. กลับไปภาพที่ 1  ฟิลด์อื่นๆ ยกเว้นฟิลด์ที่เป็นผลรวมจากฟังก์ชั่น Sum  ฟิลด์เหล่านั้นได้มาจากเรคอร์ดเดียวกันกับเรคอร์ดของวันที่ "ล่าสุด" ใช่หรือไม่ หรือได้มาจากไหน ?

3. ฟิลด์ผลรวมจากฟังก์ชั่น Sum  เกิดจากการรวมตั้งแต่วันไหนจนถึงวันไหน ?

ปล. ส่วนใหญ่คุณจะเขียนไม่ชัดเจน

156
ผมคิดว่าขึ้นกับ ODBC Setup File ตัวนั้นมากกว่า ว่ารองรับ command line ในการติดตั้งหรือไม่ เพราะฐานข้อมูลแต่ละยี่ห้อก็สร้าง ODBC Setup File ของตัวเองขึ้นมา การติดตั้งก็ไม่จำเป็นต้องรองรับ command line เสมอไป (แต่มันควรจะมี) ถ้ามี เราก็อาจทำง่ายๆคือสร้าง .bat, .cmd ไฟล์ที่ก็อปปี้ไฟล์ .accd* ของเราไปโฟลเดอร์ปลายทางและรัน ODBC Setup File โดยใช้ command line parameters  หรือถ้ามีเงื่อนไขการติดตั้งระบบของเรามากกว่านี้ ก็ต้องไปหาโปรแกรมพวก Packaging Solution เพื่อสร้างไฟล์ติดตั้ง (ไฟล์ .msi)   สำหรับ Access 2007, 2010 รู้สึกว่าจะมี Package Solution Wizard มาให้ในชุดติดตั้ง Access ครับ หรือในนี้ก็มี https://download.cnet.com/Access-2007-Download-Access-Developer-Extensions/3000-2070_4-10728244.html แต่ผมไม่เคยใช้นะครับ ต้องไปลองเอง

157
ห้อง MS Access / : การ Split database
« เมื่อ: 13 พ.ย. 62 , 09:01:51 »
ตามข้อกำหนดของ Access บอกว่าสามารถมีการใช้ไฟล์ฐานข้อมูลหนึ่งๆได้พร้อมๆกันที่ 255 หรือ 256 คนนี่แหล่ะครับ ส่วนที่เคยเจอก็ 20 กว่าคนพร้อมๆกัน

158
เมื่อป้อนช่องว่างในข้อความระหว่างการเขียนโพส  จะไม่เห็นช่องว่างจนกว่าจะโพสจริงครับ

159
ห้อง MS Access / : การ Split database
« เมื่อ: 13 พ.ย. 62 , 01:33:45 »
ไฟล์ A   (หรือเรียกว่า Backend File) จะเก็บเฉพาะเทเบิล  ส่วนไฟล์ B (หรือที่เรียกว่า Frontend File) จะเก็บส่วนอื่นๆนอกเหนือจากเทเบิล  แต่จะสร้าง Linked Table ขึ้นมาแทนเทเบิลที่ได้ย้ายไปยัง A  ซึ่งก็จะโยงไปหาเทเบิลจริงในไฟล์ A นั่นเอง  ดังนั้นการกระทำใดๆกับข้อมูลผ่าน  Linked  Table  ก็คือการทำกับข้อมูลในไฟล์ A ครับ  วิธีนี้คือวิธีที่ถูกต้องในการสร้างระบบใดๆสำหรับ Access ครับ  ไม่เว้นแม้แต่เราทำบนเครื่องเดียว ผู้ใช้เดียว

160
ถ้าเป็นบรรทัดเดียว จะไม่จัดให้ไม่ว่าไทยหรืออังกฤษ (ทดลองใน Microsoft Word ก็ไม่ทำให้เหมือนกันนะครับ) แต่ถ้าหลายบรรทัด จะจัดให้

162
ใครเคยใช้ไหม เป็นยังไงบ้าง https://ultraviewer.net/en/

หน้า: 1 ... 6 7 8 [9] 10 11 12 ... 29