maidinhdan > 10-04-15, 04:50 PM
Trích dẫn:Xin chào anh ạ, em có nghiên cứu ứng dụng Phần mềm quản lý công văn điện tử của anh, rất hay ạ, một số chức năng rất hay, ví dụ như chức năng Compact data và Auto Link Table.
A có thể share pass VBA để em học hỏi thêm Code của những cái này được không ạ.
Cảm ơn a đã xem qua Email.
m.vuong2211 > 11-04-15, 01:05 AM
maidinhdan > 11-04-15, 11:55 AM
(11-04-15, 01:05 AM)m.vuong2211 Đã viết: Ôi. . Em đã xem, rất tiện ạ.
Giả dụ trong trường hợp em có 1 table chứa data là file không quan trọng, và định kì muốn xóa những dữ liệu quá 6 tháng thì áp dụng như thế nào là ok vậy a.
Em đang nghĩ đến phương á, dùng query lọc dữ liệu đã qua 6 tháng, rồi dele thôi, còn auto thì em chưa nghĩ ra.
Private Sub Form_Load()
Dim ChuoiNgay As String, TimKiem As Variant
Dim KyNay As Variant
[color=#FF0000]Đây là đoạn so sánh 1 tháng 1 lần, bạn chế 3 dòng dưới đây thành 6 tháng 1 lần.[/color]
KyNay = Year(Date) & Right("0" & Month(Date), 2)
ChuoiNgay = "NamThang = '" & KyNay & "'"
TimKiem = DLookup("Namthang", "T_Compact", ChuoiNgay)
If IsNull(TimKiem) Then
Docmd.SetWarnings False
Docmd.RunSQL "INSERT INTO T_Compact(NamThang) VALUES(" & KyNay & ")"
[color=#FF0000]' Sau khi làm code trên xong Chèn đoạn SQL Query xóa tại đây: 6 tháng 1 lần tại đây[/color]
Docmd.SetWarnings True
Docmd.RunMacro "MacrofrmStatus"
Docmd.OpenForm "FCompact"
End If
End Sub
m.vuong2211 > 11-04-15, 02:32 PM
(11-04-15, 11:55 AM)maidinhdan Đã viết:(11-04-15, 01:05 AM)m.vuong2211 Đã viết: Ôi. . Em đã xem, rất tiện ạ.
Giả dụ trong trường hợp em có 1 table chứa data là file không quan trọng, và định kì muốn xóa những dữ liệu quá 6 tháng thì áp dụng như thế nào là ok vậy a.
Em đang nghĩ đến phương á, dùng query lọc dữ liệu đã qua 6 tháng, rồi dele thôi, còn auto thì em chưa nghĩ ra.
Tại form frmStatus bạn để ý đoạn code sau:
Mã PHP:Private Sub Form_Load()
Dim ChuoiNgay As String, TimKiem As Variant
Dim KyNay As Variant
[color=#FF0000]Đây là đoạn so sánh 1 tháng 1 lần, bạn chế 3 dòng dưới đây thành 6 tháng 1 lần.[/color]
KyNay = Year(Date) & Right("0" & Month(Date), 2)
ChuoiNgay = "NamThang = '" & KyNay & "'"
TimKiem = DLookup("Namthang", "T_Compact", ChuoiNgay)
If IsNull(TimKiem) Then
Docmd.SetWarnings False
Docmd.RunSQL "INSERT INTO T_Compact(NamThang) VALUES(" & KyNay & ")"
[color=#FF0000]' Sau khi làm code trên xong Chèn đoạn SQL Query xóa tại đây: 6 tháng 1 lần tại đây[/color]
Docmd.SetWarnings True
Docmd.RunMacro "MacrofrmStatus"
Docmd.OpenForm "FCompact"
End If
End Sub
Bạn tập làm code đi, có gì mình sửa tiếp, như vậy bạn sẽ có kinh nghiệm hơn..Chứ mình làm cho bạn thì quá dễ...
Thân ái.
ledangvan > 26-08-15, 10:05 AM
(10-04-15, 04:50 PM)maidinhdan Đã viết: Gửi tới : Trần M.Vương <m.vuong2211@gmail.com>
Trích dẫn:Xin chào anh ạ, em có nghiên cứu ứng dụng Phần mềm quản lý công văn điện tử của anh, rất hay ạ, một số chức năng rất hay, ví dụ như chức năng Compact data và Auto Link Table.
A có thể share pass VBA để em học hỏi thêm Code của những cái này được không ạ.
Cảm ơn a đã xem qua Email.
Đầu tiên xin cảm ơn bạn về lời khen trên. Thật ra trên diễn đàn cũng có bài về chức năng Compact and Repair... nhưng chỉ giới hạn ở việc phải nhấn nút.
Vấn đề Pass VBA trước đây mình cũng đã từng Share pass VBA trong phiên bản 1.1 + 1.2 + 1.3 nhưng một số người lợi dụng để thương mại hóa nên mình ngừng shared. Nên bạn thông cảm. Nếu thích chức năng nào mình tách ra cho bạn tìm hiểu.
Tiện đây tôi xin tách ra Demo đầu tiên mà bạn yêu cầu để bạn nghiên cứu.
Demo này Tự động Compact and Repair... 1 tháng 1 lần ( Để minh họa bạn chỉ việc chỉnh hệ thống sang tháng tiếp theo là nó sẽ tự động bật tính năng Compact and Repair...( Compact xong sẽ không Compact nửa cho đến khi qua tháng sau) Bạn bật thử nhiều lần lên bạn sẽ thấy.
Link demo: Tài xuống
Hy vọng giúp ít phần nào cho bạn. Thân ái.
Riêng yêu cầu thứ 2...mình sẽ tách thêm bài nửa.
maidinhdan > 26-08-15, 10:10 AM
(26-08-15, 10:05 AM)ledangvan Đã viết: Maidinhdan ơi cái này rất hay, nhưng nó chỉ thực hiện khi mở nó ra, có cách nào không mở mà tự nó compact không (Vì File cần compact thường là File dữ liệu mà nó chỉ được sử dụng thông qua kết nối link table chứ không mở trực tiếp)
ledangvan > 26-08-15, 10:39 AM
(26-08-15, 10:10 AM)maidinhdan Đã viết:(26-08-15, 10:05 AM)ledangvan Đã viết: Maidinhdan ơi cái này rất hay, nhưng nó chỉ thực hiện khi mở nó ra, có cách nào không mở mà tự nó compact không (Vì File cần compact thường là File dữ liệu mà nó chỉ được sử dụng thông qua kết nối link table chứ không mở trực tiếp)
Ý của anh là muốn compact file Back end là file chứa Data phải không, việc này hơi phức tạp nhưng vẫn có thể, để em làm Demo cho xem.
Có 1 vấn đề cần phải biết? File Data có đặt Pass hay không có pass? bởi code viết sẽ rất khác nhau. Anh muốn viết theo cái nào?
ongke0711 > 26-08-15, 03:53 PM
maidinhdan > 27-08-15, 12:33 AM
(26-08-15, 10:39 AM)ledangvan Đã viết: Đúng là anh muốn compact file Back end, hiện giờ phần mềm anh làm vẫn phải thủ công compact hơi bất tiện, phần chương trình chạy thì có thực hiện compact rồi nhưng phần dữ liệu cứ phải mở trực tiếp rồi mới compact được. File của anh không có pass.
(26-08-15, 03:53 PM)ongke0711 Đã viết: Tôi cũng hóng cái demo Compact BE này các bác Dân để áp dụng vô cái chương trình con mình đang làm.
ledangvan > 27-08-15, 12:42 PM