แสดงกระทู้

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 - Un

หน้า: [1] 2 3 4 ... 6
1
เท่าที่พอจะหาทางบันทึกเป็นไฟล์รูปภาพได้คือต้องใช้โปรแกรมเสริมเช่น Snagit แต่ขึ้นตอนการใช้งานจะยาวตัวอย่างคือ
->ทำ Report -> ที่ Report ตั้งค่าให้ปริ้นไปที่ Snagit และกำหนดขนาดตามต้องการ
และเมื่อกดปริ้น Report ->Snagit จะรับไฟล์ภาพมาเราต้องไปสั่งบันทึกชื่อ/นามสกุล/ที่วางไฟล์เองที่โปรแกรมSnagitอีกที


หรือที่จริงโปรแกรม Snagit มันก็เป็นโปรแกรมที่ใว้สำหรับจับภาพหน้าจออยู่แล้วดังนั้นเมื่อเรากด Printsceen ตามด้วยคลิ๊กเม้า...ภาพก็จะถูกส่งมาให้ Snagit ทันทีจากกด Ctrl+S เพื่อสั่งบันทึก /ลองดูครับ
 :yuush: :yuush:
โพสต์นี้ได้รับคำขอบคุณจาก: Un

2
หน้ากระทู้เก่าบอร์ด อ.Yeadram ฉบับใหม่เปิดให้สามารถเข้าไปเยี่ยมชมกันได้แล้วนะครับ :prettiness:

ลิ้งก์หน้าบอร์ดฉบับดั้งเดิมจะถูกนำออกจากหน้าหลัก,ด้านบน และนำออกจาก Sitemap มีผลทำให้ผลการค้นหา Google จะค่อยๆลิ้งก์มาแต่หน้าเว็บฉบับ PHP ใหม่แทน
ฉบับเก่าสามารถเข้าไปเยี่ยมชมได้จากลิ้งก์ในโพสต์ด้านบนยังคงเข้าดูได้อยู่ แต่เนื่องด้วยมันจะกลายเป็นข้อมูล2ชุดจึงขอเวลาคิดสักพักนึงครับ :ninja:

เนื่องด้วยทั้ง2หน้าเว็บเป็นการดึงข้อมูลจากดาต้าเบสมาแสดงโดยใช้ PHP เฉยๆไม่ได้เป็นเว็บบอร์ดที่มีฟังก์ชั่นอะไรทำให้อาจมีอะไรผิดพลาดได้หากพบเห็นรบกวนโพสต์แจ้งกันเข้ามาเลยนะครับ ผมจะพยายามปรับปรุงให้ดีที่สุดเพื่อชาว Access :smile:

โพสต์นี้ได้รับคำขอบคุณจาก: Un

3
เนื่องจากบอร์ดเรียนรู้ Access สำหรับคนไทยนั้นได้ผ่านการสืบทอดมาหลายรูปแบบได้แก่
1. ASPThai.Net <- mdb(microsoft access database) | ฉบับอ.สุภาพ ไชยยา ผู้ก่อตั้ง
2. ASPThai.Net <-> MS SQL | ฉบับอ.yeadram
3. PHP by SMF <-> My SQL | ฉบับ PookPuy ที่ใช้กันอยู่ในปัจจุบันนี้

     ซึ้งรูปแบบที่ 1 และรูปแบบที่ 2 ในส่วนของโฮสจะต้องเป็น Windows server เท่านั้น และจากการที่โฮสล่มไปเมื่อเดือนสิงหาคม 2565 ผมจึงมีความคิดที่จะเปลี่ยนระบบใหม่ให้รูปแบบคล้ายกันมากขึ้นโดยเฉพาะในส่วนของดาต้าเบสและให้สามารถใช้งานโฮสที่เป็นระบบลีนุกซ์(Linux)ได้ด้วย
     จึงได้ทดลองเปลี่ยนรูปแบบที่ 1.บอร์ดเก่าฉบับ อ.สุภาพ ไชยา เชิญเข้าไปเยี่ยมชมได้จากลิ้งก์ที่อยู่ด้านบนของเว็บบอร์ดหรือที่อยู่บนหน้าหลักครับ *โดยจะยังคงแสดงผลแบบอ่านได้อย่างเดียว
หากพบปัญหาหรืออยากให้เปลี่ยนแปลงสิ่งใดแสดงความคิดเห็นกันมาได้เลยครับ  :question:

รายการโครงการ :yuush:
- PHP หน้าเว็บบอร์ดจากกระทู้ฉบับ อ.สุภาพ ไชยา[แล้วเสร็จ]
- Sitemap กระทู้บอร์ด อ.สุภาพ ไชยา[แล้วเสร็จ]
- PHP หน้าเว็บบอร์ดจากกระทู้ฉบับอ.yeadram[แล้วเสร็จ]
- Sitemap กระทู้บอร์ดอ.yeadram[แล้วเสร็จ] *รวมถึงปรับปรุงใหม่หมดทั้งเว็บบอร์ด
- จัดการรูปภาพที่ใช้ในกระทู้บอร์ดอ.yeadram[แล้วเสร็จ]
- แก้ลิ้งก์ที่มีในบอร์ดให้ไปยังหน้า PHP[แล้วเสร็จ]
- ASP Response.Redirect() to PHP[แล้วเสร็จ]
  ^ มีผลทำให้ไม่ว่าจะลิ้งก์หน้า ASP มาจาก google หรือจากที่ใดจะไปเปิดหน้าบอร์ดฉบับ PHP ทั้งหมด
หน้าเว็บบอร์ดPHP รองรับมุมมองทั้งบนคอมพิวเตอร์ โทรศัพท์มือถือ และแท็บเล็ต (Responsive) :cool:
*การทำ Sitemap นั้นเพื่อให้สามารถใช้ระบบค้นหาด้วย Google เป็นหลักครับ :fake smile:

ปล.ลิ้งก์หน้าเว็บบอร์ดฉบับดั้งเดิม  จะแสดงรายการกระทู้ต่างๆหรือใช้คำสั่งค้นหาภายในบอร์ดนั้นๆได้ โดยเมื่อกดเปิดอ่านจะลิ้งก์มาหน้ากระทู้ฉบับ PHP ครับ
บอร์ดเก่า อ.Yeadram  --> https://www.thai-access.com/yeadram.asp
บอร์ดเก่า อ.สุภาพ ไชยา --> https://www.thai-access.com/chaiya.asp


[8 ตุลาคม 2565]
โพสต์นี้ได้รับคำขอบคุณจาก: Un

4
ลองแบบที่อาจารย์ OddyWriter บอกดีกว่าครับ ผมก็คิดอยากจะทำกับคิวรี่แต่คิดวิธีไม่ออกครับ
เมื่อมีแนวทางแล้ว เอาแบบที่ อาจารย์ OddyWriter แนะนำดีกว่าครับ เร็วกว่าจริงๆ
โพสต์นี้ได้รับคำขอบคุณจาก: Un

5
1. ข้อมูลแบบนี้ต้องมี MovementID ร่วมด้วย
2. "วันแรกที่รับเข้า เรคคอดแรกของโปรแกรม มันจะคิดรวมยังงัย" ขึ้นอยู่กับเงื่อนไขการรับเข้าครับ ถ้าจะไม่ให้มารวม ก็ใส่เป็น 0 แทนที่จะเป็น 1 หรือ -1
3. การเขียน Code ก็ดีนะครับ แต่ปัญหาคือมันทำงานช้ากว่า Query ครับ ผมเคยเขียน Code Loop 10,000 รอบ สำหรับข้อมูล 10,000 เรคอร์ด กว่าจะทำงานเสร็จ สุดท้ายใช้ Query ซ้อน Query เร็วกว่ากันเยอะ (กดปุ๊บ ได้ปั๊บ)
โพสต์นี้ได้รับคำขอบคุณจาก: Un

6
ถ้าใช้ 1 กับ 2 แบบนี้ เวลาทำ Total Query เพื่อหาผลรวม มันก็ทำได้นะครับ แต่จะยุ่งยากหน่อยๆ
แนะนำให้เปลี่ยนจาก 1 กับ 2 เป็น 1 กับ -1 แล้วเพิ่มคอลัมน์ ที่นำจำนวนมาคูณกับ 1 กับ -1

จากนั้นทำ Total Query จากค่าผลลัพธ์ที่ได้

อีกอย่าง "ตัวแปร" คือ Variable ส่วน "ตัวแปล" ก็ประมาณ "วุ้นแปลภาษาของโดเรมอน" ครับ



ขอ Query Running sum ฟิลด์ Totel ครับ
โดย MCode เป็นตัวแปลตามชนิดวัสดุ
      MType เป็นตัวแปลถ้ารับ(เท่ากับ1)จะเอาค่าที่รับมาบวก ถ้าเบิก(เท่ากับ2)เอามาลบ
Table แรกชื่อ qMrep

ขอความช่วยเหลือด้วยครับ
โพสต์นี้ได้รับคำขอบคุณจาก: Un

7
ถ้าใช้คิวรี่ยังคิดไม่ออก
แต่ถ้าเป็นการ Loop check แล้วนำมาเพิ่มหรือหักลบกับค่าด้านบนเหมือนการรับยอดตัดยอดผมพอทำได้ครับ
วิธีการที่คิดได้ต้องสร้างตารางเพื่อแสดงผลครับ
เอาไหม ?
โพสต์นี้ได้รับคำขอบคุณจาก: Un

8
ไม่รู้ว่าใช่ Version ที่ต้องการหรือเปล่า
โพสต์นี้ได้รับคำขอบคุณจาก: Un

9
อ้าว ลบข้อมูลออกทำไมอะครับ เผื่อจะมีประโยชน์กับคนอื่นในอนาคต
โพสต์นี้ได้รับคำขอบคุณจาก: Un

10
ผมพิมพ์คำว่า เอนก Access มันแก้ไขให้เอง เป็น อเนก
ปกติก็ไปแก้ที่การตั้งค่า แต่พอเป็น Access คั้งแต่ 2010 ขึ้นไป แก้ที่ตรงไหนครับ
ผมลองไปที่ ตั้งค่า > ฐานข้อมูลปัจจุบัน > ตัวเลือกการแก้ไขชื่อัตโนมัติ คลิกที่กล่องคำสั่งออก
แล้วปิดโปรแกรม เปิดใหม่ แต่มันไม่หายครับ ใครรู้ช่วยหน่อยครับ

อยู่ตรง ตั้งค่า > การพิสูจน์อักษร มันจะมีปุ่ม ตัวเลือกการแก้ไขอัตโนมัติ
โพสต์นี้ได้รับคำขอบคุณจาก: Un

11
หาจนเจอครับ มันเป็นรูปแบบของ UnixTime ซึ่งเป็นรูปแบบวันที่ บน MySQL
จึงเอามาฝากใว้ให้เพื่อนสมาชิก เผื่อว่า ติดปัญหาเดียวกัน
vDate =  ([StartTime]/86400)+#01/01/1970#

แหล่งที่มา
https://codebeautify.org/unix-time-stamp-converter link
โพสต์นี้ได้รับคำขอบคุณจาก: Un

12
เหมือนว่าระบบจะไม่ให้แก้ข้อมูลเก่าเป็นฟิลด์คำนวนครับ ต้องเพิ่มแถวข้อมูลใหม่ > Calculated > ใส่หรือพิมพ์สูตรทึีต้องการคำนวนเช่น [a ]+[b ] / เสร็จสิ้น

https://codekabinett.com/rdumps.php?Lang=2&targetDoc=access-table-calculated-field-compute-quarter-date link

โพสต์นี้ได้รับคำขอบคุณจาก: Un

13
เดี่ยว DIY ให้ครับ
โพสต์นี้ได้รับคำขอบคุณจาก: Un

14
ขอบคุณครับอาจารย์ เดี๋ยวจะลองแบบนี้ดูครับ
จากโพสบนได้ปรับปรุงโค้ดนิดหน่อยนะครับ กรณีที่ครบ 15 ทุกหน้าก็ให้ทำงานตามปกติ ไม่ต้อง Addrow
โพสต์นี้ได้รับคำขอบคุณจาก: Un

15
ผม DIY เอานะครับ
ผมสมมุติตารางหลักชื่อ table1
          ตารางที่ออกรายงานชื่อ Table1Report โดยใช้การ Maketable โดยได้เพิ่ม Field Addrow มาด้วย
โดยใช้
totalRec = DCount("*", "table1") 'นับจำนวนแถวทั้งหมดของตาราง table1
totalRec = 15 - ([totalRec] Mod 15)  'เพื่อให้ได้ จำนวนแถวที่ขาดหายไป

แล้วใช้โค้ด Addnew เพื่อเพิ่มแถวที่ขาดหายไปยังตาราง Table1Report
เท่านั้นก็จะได้แถวครบ 15 แถวในหน้าสุดท้ายแล้วครับ โดยโค้ดสามารถดูได้จากปุ่ม เปิดรายงานบนฟอร์มนะครับ
โค๊ด: [Select]
Private Sub Command0_Click()
Dim totalRec As Integer
Dim RS As DAO.Recordset
Dim i As Integer
Dim sql As String
totalRec = DCount("*", "table1") 'นับจำนวนแถวทั้งหมดของตาราง table1
totalRec = 15 - ([totalRec] Mod 15)  'หาจำนวนแถวที่ขาดหายไปที่ไม่ครบ 15แถว
If Not totalRec = "15" Then
sql = "SELECT ' ' AS AddRow, Table1.* INTO Table1Report FROM Table1;" 'สั่งให้มีการสร้างตารางซัฟ ขึ้นมาเพื่อใช้แสดงรายงาน
        DoCmd.SetWarnings False
        DoCmd.RunSQL sql
        DoCmd.SetWarnings True

For i = 1 To totalRec
    Set RS = CurrentDb.OpenRecordset("table1Report", dbOpenDynaset) 'add แถวที่เหลือไปยังตาราง สำรอง
            RS.AddNew
            RS![Addrow] = " " & i
            RS.Update
  Next
    RS.Close
    Set RS = Nothing
   
    Else 'ถ้าเช็คแล้ว ไม่เกิน 15 คือครบทุกหน้าก็ให้ทำงานที่คำสั่ง ล่าง Else ครับ
    sql = "SELECT ' ' AS AddRow, Table1.* INTO Table1Report FROM Table1;" 'สั่งให้มีการสร้างตารางซัฟ ขึ้นมาเพื่อใช้แสดงรายงาน

        DoCmd.SetWarnings False
        DoCmd.RunSQL sql
        DoCmd.SetWarnings True

    End If
   
    DoCmd.OpenReport "rptdemo", acViewPreview
End Sub


และในส่วนของ รายงานแก้เป็นแบบนี้นะครับ
โค๊ด: [Select]
Private Sub รายละเอียด_Print(Cancel As Integer, PrintCount As Integer)
 If PrintCount = 1 Then curTotal = Nz(curTotal, 0) + Nz(Me.Amount, 0)
 End Sub
โพสต์นี้ได้รับคำขอบคุณจาก: Un

16
สร้าง textbox และใส่โค้ดแบบที่ผมโพสไปครับ
โพสต์นี้ได้รับคำขอบคุณจาก: Un

หน้า: [1] 2 3 4 ... 6