• [Demo] Hướng dẫn sử dụng UpdateBatch(ADO)
  • RE: [Demo] Hướng dẫn sử dụng UpdateBatch(ADO)

    thuyyeu99 > 10-03-20, 05:26 PM

    (10-03-20, 05:05 PM)ongke0711 Đã viết: Vậy tool này hỗ trợ lấy dữ liệu từ nhiều bảng ở phía remote rồi lưu máy về thành file .accdb tạm được không? Từ đó ứng dụng 
    Cái này em chưa hiểu lắm, láy dữ liệu rồi lưu vào file mdb được mà anh

     Tool này thực chất là em dùng toàn bộ là câu lệnh SQL hết anh, nếu đã Select thì chắc chắn Update, AddNew phải được, cái này khỏi lăn tăn vì nó là SQL mà. chỉ cần chạy câu lệnh update hoặc AddNew thuần túy của Access thôi. 

    Em sẽ cung cấp hàm để chạy vídụ máy Client chỉ cần gõ lệnh RunSQLClient(Ip,User,Passđangnhập,caulenhSQL) là Server nó sẽ kiểm tra IP, tên người dùng, mật khẩu người dùng, và câu lệnh SQL bình thường

    Đồng bộ thời gian thực thì thực chất là thêm 1 cái Timer cho nó gởi lệnh đi về thôi, em thấy cái này không hay lắm, khi không cần thiết nó vẫn check kiểm tra.

    Giống như Clients chạy macro File trên mấy chủ đây anh. hihi.

    Cái này muốn chạy qua internet được phải mở cổng port như SQL vậy.
  • RE: [Demo] Hướng dẫn sử dụng UpdateBatch(ADO)

    ongke0711 > 10-03-20, 08:53 PM

    (10-03-20, 05:26 PM)thuyyeu99 Đã viết: Cái này em chưa hiểu lắm, láy dữ liệu rồi lưu vào file mdb được mà anh

     Tool này thực chất là em dùng toàn bộ là câu lệnh SQL hết anh, nếu đã Select thì chắc chắn Update, AddNew phải được, cái này khỏi lăn tăn vì nó là SQL mà. chỉ cần chạy câu lệnh update hoặc AddNew thuần túy của Access thôi. 

    Anh đưa các câu hỏi để em tự định hướng thiết kế đáp ứng các yêu cầu đó của người lập trình hoặc nếu viết cho người dùng cuối thì phải có những tính năng gì.
    Vấn đề ở cái tool này hiện tại là anh không biết áp dụng vô cái ứng dụng thực tế thì tích hợp như thế nào? Em nên có cái demo áp dụng thực tiễn thì khán giả mới thấy à nó giải quyết được nhu cầu A, B, C gì đó.
    Ví dụ: em thiết kế một cái ứng dụng đơn giản nhập/ sửa tên nhân viên, lấy danh sách nhân viên theo yêu cầu trong Access và Excel rồi áp dụng nó vô chạy như thế nào.

    Trích dẫn:Em sẽ cung cấp hàm để chạy vídụ máy Client chỉ cần gõ lệnh RunSQLClient(Ip,User,Passđangnhập,caulenhSQL) là Server nó sẽ kiểm tra IP, tên người dùng, mật khẩu người dùng, và câu lệnh SQL bình thường

    Cái này không đơn giản vậy đâu em  007 . Em nên ngâm cứu kỹ cách thức kết nối, xử lý đối với SQL Server thì thiết kế hàm mới phù hợp. Ví dụ: có những lúc kết nối xong, lấy dữ liệu và vẫn giữ kết nối, có trường hơp thì ngắt kết nối - xử lý - kết nối lại. Nói chung là tuỳ CSDL, em phải thiết kế thực tế mới thấy được các yếu tố phát sinh.
    Nếu em thiết kế cho dữ liệu nguồn là Excel thì anh không có gì bàn thêm. 007

    Nói chung là phải áp dung vô cái ứng dụng đúng với như cầu thực tế thì người dùng mới thấy được cái hay, cái lợi ích của cái tool của em.
    Em viết thành cái Dll rồi anh đưa vô Access xem thiết kế sử dụng xem như thế nào.
  • RE: [Demo] Hướng dẫn sử dụng UpdateBatch(ADO)

    thuyyeu99 > 10-03-20, 09:25 PM

    (10-03-20, 08:53 PM)ongke0711 Đã viết: Cái này không đơn giản vậy đâu em  007 . Em nên ngâm cứu kỹ cách thức kết nối, xử lý đối với SQL Server thì thiết kế hàm mới phù hợp. Ví dụ: có những lúc kết nối xong, lấy dữ liệu và vẫn giữ kết nối, có trường hơp thì ngắt kết nối - xử lý - kết nối lại. Nói chung là tuỳ CSDL, em phải thiết kế thực tế mới thấy được các yếu tố phát sinh.
    Nếu em thiết kế cho dữ liệu nguồn là Excel thì anh không có gì bàn thêm. 007

    Nói chung là phải áp dung vô cái ứng dụng đúng với như cầu thực tế thì người dùng mới thấy được cái hay, cái lợi ích của cái tool của em.
    Em viết thành cái Dll rồi anh đưa vô Access xem thiết kế sử dụng xem như thế nào.
    nói thật là em chưa đụng sâu vố Accees hay SQL tự không có điều kiện chỉ lòng vòng dùng nó làm nơi lưu dữ liệu thôi ah.
    Kết nối hiện tại em đang demo kết nối không ngắt lúc nào cũng mở chỉ check user thôi.
    để em làm xong cái file quản lý user rồi em đưa anh test.

    mà bây giờ cái laptop của em không có Access giờ muốn cài riêng cái Acces thì sao anh. em pó tay. em đang tính thử xem cái DLL nó có chạy trong Access không. nế chạy thì đỡ còn không thì cực lắm luôn àh.

    Ps đã kiếm được link download
  • RE: [Demo] Hướng dẫn sử dụng UpdateBatch(ADO)

    thuyyeu99 > 10-03-20, 11:52 PM

    Chà em mới nhúng thử vào Access chạy lần 1 không sao, chạy lần 2 nó Cract thoát luôn Access.

    [img=50x20][Hình: acess.png][/img]
  • RE: [Demo] Hướng dẫn sử dụng UpdateBatch(ADO)

    ongke0711 > 11-03-20, 09:16 PM

    (10-03-20, 11:52 PM)thuyyeu99 Đã viết: Chà em mới nhúng thử vào Access chạy lần 1 không sao, chạy lần 2 nó Cract thoát luôn Access.

    Anh nghĩ em nắm rõ cơ chế của Excel thì tập trung viết cái Add-in này chuyên cho Excel trước đi. Số người dùng Excel đông đảo, không dễ bỏ thói quen dùng Excel cho mọi ứng dụng trong công việc nên các Tool cho Excel sẽ có thị trường hơn.
    Cái tính năng kết nối Internet này của em rất hay, có thể kiếm chút nhuận bút từ nó đó. Giờ chỉ cần làm cái demo Excel, tích hợp cái thư viện này vô, biễu diễn tính ứng dụng của nó trong thực tế công việc cụ thể nào đó là có thể quảng bá rồi.
  • RE: [Demo] Hướng dẫn sử dụng UpdateBatch(ADO)

    thuyyeu99 > 11-03-20, 11:46 PM

    (11-03-20, 09:16 PM)ongke0711 Đã viết:
    (10-03-20, 11:52 PM)thuyyeu99 Đã viết: Chà em mới nhúng thử vào Access chạy lần 1 không sao, chạy lần 2 nó Cract thoát luôn Access.

    Anh nghĩ em nắm rõ cơ chế của Excel thì tập trung viết cái Add-in này chuyên cho Excel trước đi. Số người dùng Excel đông đảo, không dễ bỏ thói quen dùng Excel cho mọi ứng dụng trong công việc nên các Tool cho Excel sẽ có thị trường hơn.
    Cái tính năng kết nối Internet này của em rất hay, có thể kiếm chút nhuận bút từ nó đó. Giờ chỉ cần làm cái demo Excel, tích hợp cái thư viện này vô, biễu diễn tính ứng dụng của nó trong thực tế công việc cụ thể nào đó là có thể quảng bá rồi.
    Hihi tiền đối với em rất quan trọng nhưng không phải duy nhất. Cái gì khó em muốn mờ cho ra bằng mọi giá
    ... mờ hông ra thì xin pó tay hihi.
    Mà coi chừng mờ hông ra thiệt. Cái này quá lớn rồi em sợ hichic. Em ma chay được cái hàm đơn giản thì ok mà không thì pó tay. Người ta gọi là điếc không sợ súng. Chắc kỳ  này là sợ nhiệt
  • RE: [Demo] Hướng dẫn sử dụng UpdateBatch(ADO)

    Xuân Thanh > 12-03-20, 06:30 AM

    Coi lại cái đoạn này thử
    Set a = Nothing
    b = Empty
    (Vì b nằm trong a)
  • RE: [Demo] Hướng dẫn sử dụng UpdateBatch(ADO)

    thuyyeu99 > 12-03-20, 11:24 AM

    (12-03-20, 06:30 AM)Xuân Thanh Đã viết: Coi lại cái đoạn này thử
    Set a = Nothing
    b = Empty
    (Vì b nằm trong a)
    Không phải lỗi đó đâu anh. Viết dll sợ nhất là trường hợp này không báo lỗi gì hết mà nó văng luôn chương trình. Em đang làm lại cái mới từng bước xem nó bị lỗi chỗ nào. Chua thật ...
  • RE: [Demo] Hướng dẫn sử dụng UpdateBatch(ADO)

    kieu manh > 15-05-20, 06:48 PM

    Thấy các Bạn nói Share Data qua Internet nên mới nói vài câu thế thôi 

    1/ Mình thấy Access họ vẫn viết Server + Client chát qua lại ok đó
    2/ Họ sử dụng Hàm API của Windows để Viết Server + Client chát đó
    3/ Mình thử chát trong LAN thấy Ok ...
    4/ Còn ứng dụng nó lấy dữ liệu qua Internet được hay ko thì mình chưa biết viết sao ???!! Vì viết trên Access với mình rất khó 
    Mã:
    Private Declare Function api_socket Lib "ws2_32.dll" Alias "socket" (ByVal af As Long, ByVal s_type As Long, ByVal Protocol As Long) As Long
    Private Declare Function api_GlobalLock Lib "kernel32" Alias "GlobalLock" (ByVal hMem As Long) As Long
    Private Declare Function api_GlobalUnlock Lib "kernel32" Alias "GlobalUnlock" (ByVal hMem As Long) As Long
    Private Declare Function api_htons Lib "ws2_32.dll" Alias "htons" (ByVal hostshort As Integer) As Integer
    Private Declare Function api_ntohs Lib "ws2_32.dll" Alias "ntohs" (ByVal netshort As Integer) As Integer
    Private Declare Function api_connect Lib "ws2_32.dll" Alias "connect" (ByVal s As Long, ByRef name As sockaddr_in, ByVal namelen As Long) As Long
    Private Declare Function api_gethostname Lib "ws2_32.dll" Alias "gethostname" (ByVal host_name As String, ByVal namelen As Long) As Long
    Private Declare Function api_gethostbyname Lib "ws2_32.dll" Alias "gethostbyname" (ByVal host_name As String) As Long
    Private Declare Function api_bind Lib "ws2_32.dll" Alias "bind" (ByVal s As Long, ByRef name As sockaddr_in, ByVal namelen As Long) As Long
    Private Declare Function api_getsockname Lib "ws2_32.dll" Alias "getsockname" (ByVal s As Long, ByRef name As sockaddr_in, ByRef namelen As Long) As Long
    Private Declare Function api_getpeername Lib "ws2_32.dll" Alias "getpeername" (ByVal s As Long, ByRef name As sockaddr_in, ByRef namelen As Long) As Long
    Private Declare Function api_inet_addr Lib "ws2_32.dll" Alias "inet_addr" (ByVal cp As String) As Long
    Private Declare Function api_send Lib "ws2_32.dll" Alias "send" (ByVal s As Long, ByRef buf As Any, ByVal buflen As Long, ByVal flags As Long) As Long
    Private Declare Function api_sendto Lib "ws2_32.dll" Alias "sendto" (ByVal s As Long, ByRef buf As Any, ByVal buflen As Long, ByVal flags As Long, ByRef toaddr As sockaddr_in, ByVal tolen As Long) As Long
    Private Declare Function api_getsockopt Lib "ws2_32.dll" Alias "getsockopt" (ByVal s As Long, ByVal level As Long, ByVal optname As Long, optval As Any, optlen As Long) As Long
    Private Declare Function api_setsockopt Lib "ws2_32.dll" Alias "setsockopt" (ByVal s As Long, ByVal level As Long, ByVal optname As Long, optval As Any, ByVal optlen As Long) As Long
    Private Declare Function api_recv Lib "ws2_32.dll" Alias "recv" (ByVal s As Long, ByRef buf As Any, ByVal buflen As Long, ByVal flags As Long) As Long
    Private Declare Function api_recvfrom Lib "ws2_32.dll" Alias "recvfrom" (ByVal s As Long, ByRef buf As Any, ByVal buflen As Long, ByVal flags As Long, ByRef from As sockaddr_in, ByRef fromlen As Long) As Long
    Private Declare Function api_WSACancelAsyncRequest Lib "ws2_32.dll" Alias "WSACancelAsyncRequest" (ByVal hAsyncTaskHandle As Long) As Long
    Private Declare Function api_listen Lib "ws2_32.dll" Alias "listen" (ByVal s As Long, ByVal backlog As Long) As Long
    Private Declare Function api_accept Lib "ws2_32.dll" Alias "accept" (ByVal s As Long, ByRef addr As sockaddr_in, ByRef addrlen As Long) As Long
    Private Declare Function api_inet_ntoa Lib "ws2_32.dll" Alias "inet_ntoa" (ByVal inn As Long) As Long
    Private Declare Function api_ioctlsocket Lib "ws2_32.dll" Alias "ioctlsocket" (ByVal s As Long, ByVal cmd As Long, ByRef argp As Long) As Long
    Private Declare Function api_closesocket Lib "ws2_32.dll" Alias "closesocket" (ByVal s As Long) As Long
    https://drive.google.com/open?id=1PcQykN...qrTYb94uQS
  • RE: [Demo] Hướng dẫn sử dụng UpdateBatch(ADO)

    ongke0711 > 17-05-20, 08:01 PM

    (15-05-20, 06:48 PM)kieu manh Đã viết: Thấy các Bạn nói Share Data qua Internet nên mới nói vài câu thế thôi 

    1/ Mình thấy Access họ vẫn viết Server + Client chát qua lại ok đó
    2/ Họ sử dụng Hàm API của Windows để Viết Server + Client chát đó
    3/ Mình thử chát trong LAN thấy Ok ...
    4/ Còn ứng dụng nó lấy dữ liệu qua Internet được hay ko thì mình chưa biết viết sao ???!! Vì viết trên Access với mình rất khó 

    - Bạn đã wrapper cái Winsock API sang dùng được trong VBA chưa? Nếu có thì chia sẻ nhé.
    - Bạn đã dùng Winsock kết nối qua giao thức TCP/IP chát chít là đã truyền tải dữ liệu qua internet rồi mà còn hỏi nữa là sao nhỉ.
    - Access (hay Excel) dùng MSWinSock.OCX để chát chít, gửi tin nhắn thì đã có lâu lắm rồi nhưng do dùng Winsock.OCX bảo mật kém, dể bị h@cker can thiệp và nó không được hỗ trợ bởi Office 64bit nên cũng ít ai phát triển nó.