Translate

Tuesday, August 18, 2015

Lotus Notes & domino là gì?


Trong bài viết này tôi xin chỉ nói những thông tin cơ bản nhất về lotus notes & domino.
Lotus notes & domino là sản phầm được phát triển bởi IBM. Lotus Notes & Domino có thể hiểu một cách đơn giản thì nó là một “hệ thống” các phần mềm hỗ trợ làm việc cộng tác.
Lotus Domino: là phần mềm máy chủ, nó gồm có: web server, mail server và ldap server.
Lotus Notes: là phần mềm client, nó gồm có: Lotus notes, domino designer và domino admin.
  • Lotus notes: là phần mềm dùng để chạy các ứng dụng của lotus, có thể là các ứng dụng trên domino server hay các úng dụng trên local. Ở đây, email cũng được coi là một ứng dụng lotus ^^. hay có thể dụng như một mail client để check các mail của hệ thống mail khác như exchange v.v… Chú ý: các ứng dụng của Lotus notes có thể được thiết kế để chạy được trên nền web.
  • Domino designer: phần mềm editor để thiết kế các ứng dụng của lotus.
  • Domino admin: là phần mềm để quán trị hệ thống domino server.
Bài viết sau: cài đặt và cấu hình Lotus notes & domino (cơ bản)

Cài đặt IBM Lotus Notes


Lotus Notes là bộ sản phẩm client gồm có:
– Domino Admin: sử dụng dể quản trị IBM Domino Server
– Lotus Notes: Sử dụng để quản lý các và chạy các ứng dụng Lotus Notes
– Domino Designer: là bộ công cụ phát triển các ứng dụng Lotus Notes
Các bước thực hiện cài đặt (Việc cài đặt tương tự như cài đặt các ứng dụng desktop khác, tất nhiên. Các bạn xem video nhé):
  1. Double click vào file cài đặt IBM Lotus Notes. Click chọn Next và chờ quá trình giải nén. sau khi chương trình giải nén gói cài đặt ta bắt đầu quá trình cài đặt.
  2. Làm theo hướng dẫn trên giao diện wizard để thực hiện cài đặt. chú ý: phần custom setup các bạn chọn các thành phần cài đặt là Domino Admin, Domino Designer, Lotus Notes. và tiếp tục cho đến khi quá trình cài đặt kết thúc.
  3. Cấu hình Lotus Notes: sau khi cài đặt xong bộ lotus, các bạn bận lotus notes để bắt đầu quá trình cấu hình. (Chú ý bật Domino Server trước khi bắt đầu cấu hình)
Cấu hình:
Trong phần user information:
  • Your name: ở đây khi cài domino ta đã khai báo người dùng administrator. do vậy, ở đây ta sử dụng người dùng là administrator, nếu không ở đây ta sẽ nhập tên người dùng được cấp tài khoán (chú ý: người dùng phải có file id).
  • Domino server: tên hoặc địa chỉ máy chủ domino, ở đây có thể nhập là: xxx.xxx.xxx.xxx hoặc 127.0.0.1 hoặc demo/tandan/VN.
Sau khi khai báo người dùng, chương trình sẽ hỏi mật khẩu (ở đây mật khẩu là của người dùng administrator được tạo trong quá trình cấu hình Domino Server)
Nếu chương trình yêu cầu file id thì các bạn chọn file id của người dùng. bạn có thể tìm thấy file id của người dùng administrator trong thư mục [domino]\data\user.id (chú ý là nếu trong quá trình cài đặt domino các bạn không tick cho phép tạo file id thì chương trình sẽ tạo file user.id là file id của administrator trong thư mục [lotus]\data\user.id)
Sau khi quá trình cấu hình Lotus Notes hoàn tất chương trình sẽ mở Lotus Notes ra. Các bạn vào Open -> Domino administrator để mở domino administrator và cấu hình một số tham số khác của Domino.
Cấu hình domino:
  • Từ Lotus Notes, Chọn Open -> Domino Administrator, hoặc bạn có thể mở trực tiếp Domino Administrator ra.
  • Trong quá trình mở có thể Domino Admin báo không kết nối được đến server, không sao các bạn cứ click OK, sau khi vào Domino Admin mở server sau cũng được
  • Nếu Domino Admin không tìm được Domino Server thì phần server sẽ báo server là local
    để mở domino server, các bạn vào File -> open. Các bạn nên nhập IP của server (ở đây tôi nhập luôn là 127.0.0.1)
  • sau khi mở server, các bạn vào phần config để cấu hình một số tham số cho server (Xem video).  ở đây tôi chỉ cấu hình những cái cơ bản và đơn giản nhất, để thực hiện các cấu hình khác các bạn có thể đọc thêm tài liệu help của Domino Admin, các tài liệu được cung cấp bởi IBM, hoặc tìm kiếm từ các tài nguyên trên mạng.
  • Các cấu hình trong phần sercurity tôi cho phép toàn bộ user có thể thực hiện các tác vụ sign, run với agent, xpage, chạy các đoạn code java, javascript, dom… nếu không cho phép thì, tất nhiên, người dùng không thể chạy được các agent….
  •  Trong phần port -> internet port cho phép các bạn đặt lại các cổng kết nối cho http, diiop, các giao thức mail ….
  • Trong phần Internet Protocols -.> Domino Web Engine -> Http Session -> Session Authentication cho phép các bạn đặt lại cách xác thực. Có 3 tùy chọn: disable (mặc định, basic authentication),  single server (form authentication), Multiple servers (SSO). Các bạn có thể đặt là 2 kiểu đầu, riêng SSO thì sau này tôi sẽ có bài viết riêng về SSO Với domino (nhờ người khác viết thôi, tôi ko chuyên về hệ thống, chỉ chuyên về code)
  • Sau khi đã cấu hình xong các bạn restart lại server.
Video cho bài viết:

Categories: Lotus Notes & Domino

Cài đặt và cấu hình lotus domino

31/08/2011 1 comment
Việc cài đặt domino cũng đơn giản như việc cài đặt các ứng dụng khác, ở đây tôi chỉ hướng dẫn các bạn cài đặt và cấu hình ở mức đơn giản nhất.
Các bước cài đặt và cấu hình lotus domino.
  1. Chạy file cài đặt: Sau khi chạy file cài đặt, các file cài đặt sẽ được extract ra ổ cứng.
  2. Thực hiện quá trình cài đặt: làm theo hướng dẫn trên màn hình (chủ yếu là click nút next) và chờ quá trình copy file hoàn tất.
  3. Sau khi quá trình copy file hoàn tất, click vào biểu tượng Lotus Domino Server để bước vào quá trình setup server (Xem video).
  4. Trong qua trình cài đặt các bạn có thể tick chọn tạo file id của admin sau này dùng hoặc có thể tạo file này khi lần đầu tiên cài notes
  5. Sau khi setup server, mở browser và gõ địa chỉ http://127.0.0.1 bạn sẽ thấy man hình giao diện mặc định của lotus domino

  6.  
Một số bước cấu hình đơn giản: Các bạn xem trong phần cài đặt và cấu hình Lotus notes nhé, vì cấu hình domino server được thực hiện thông qua lotus admin
     

Tạo ứng dụng đa ngôn ngữ.


Chào các bạn!
Các đặc điểm của IBM Lotus Domino cho phép bạn tạo một ứng dụng hỗ trợ nhiều ngôn ngữ khác nhau. Để tạo một ứng dụng đa ngôn ngữ, bạn làm theo các bước sau:
  • Mở properties của ứng dụng: Double click vào Application properties trong view Application
  • Chọn tab Design
  • Phần Internet options tick chọn Multilingual database và chọn ngôn ngữ mặc định, ngôn ngữ mặc định là ngôn ngữ sẽ được sử dụng khi mà browser không được chọn ngôn ngữ nào trong số các thành phần design mà chương trình có
  • Tạo một thành phần design cho ngôn ngữ mặc định, đặt alias cho nó. alias là đặc điểm nhận đạng chung cho các bản copy khác nhau của các thành phần design giống nhau.
  • Tạo một bản copy của thành phần design vừa tạo, sửa đổi nội dung, đặt tên và alias cho nó.
  • Double-click vào nhóm thành phần (Views, Forms, Pages….) để mở danh sách các thành phần ra.
  • Chọn thành phần design cần đặt ngôn ngữ -> chọn design – properties.
  • Trong view properties chọn tab Design, trong phần Multilingual settings chọn ngôn ngữ cần đặt (assign).
Theo các bước trên bạn đã có thể tạo được các thành phần design với các ngôn ngữ khác nhau. các ngôn ngữ này được hiển thị dựa trên phần ngôn ngữ được lựa chọn của browser của người dùng. Bài viết dựa trên phần Help của Domino Designer, (Domino Designer – Help – Lotus Domino Designer Basic User Guild And Reference – Application Design – Create multilingual applications).
Video:

Tạo ứng dụng domino


Các ứng dụng viết cho domino được đóng gói trong một file có đôi .nsf, ngoài ra các bạn còn thấy một định dạng file nữa là file .ntf (File template). Để tạo một ứng dụng domino ta sẽ tạo từ các file template, ứng dụng mới ta sẽ sử dụng blank template.
Để tạo một ứng dụng từ template ta làm theo các bước sau:
  1. Từ giao diện IBM Lotus Notes
  2. Copy template design lên server (có thể là server local) nếu cầu (Xem thêm ở video thứ 2).
  3. File – Application – New, hoặc ấn phím tắt Ctrl + N. Chương trình sẽ mở ra dialog New Application
  4. Chọn server chạy ưng dụng muốn tạo (ex: demo/tandan/VN), Nhập tiêu đề ứng dụng, tên file (có đuôi .nsf). chú ý: để đặt file vào trong thư mục ta gõ đường dẫn [tenthumuc]/[tenfile.nsf]
  5. Phần Specify Template for New Application, Bạn chọn server chứa file template (có thể là local) sau đó chọn template bên dưới.
  6. Click OK

Video:

(Video 01: tạo ứng dụng từ blank template)

Sau khi tạo một ứng dụng từ một template thường ta sẽ phải đăng ký các thành phần của database này với server. Để đăng ký với database với server ta làm theo các bước sau:
  1. Từ  giao diện Domino Administrator, mở server chứa application cần đăng ký
  2. Files – Chọn application
  3. Click chuột phải vào ứng dụng -> Sign, Các bạn chờ một lúc để server đăng ký ứng dụng này.
Video:

(Video 02: tạo ứng dụng từ một template bất kỳ)

Trên đây là cách để các bạn tạo một ứng dụng domino từ một template có sẵn (Có thể là blank template). Các bạn nên chú ý phần chọn server chạy ứng dụng, thư mục đặt application. khi ứng dụng được đặt trong thư mục (ex: demo/demo01.nsf) thì đường dẫn URL của ứng dụng trên browser sẽ là http://%5Bserver%5D: [port]/[thumuc1/thumuc2/…/thumucn]/[tenfile.nsf] (ex: http://127.0.0.1/demo/demo01.nsf).
Ngoài ra: các bạn có thể copy thẳng file nsf các bạn có vào thư mục data của domino, xong tôi khuyến cáo không nên làm theo cách này khi các bạn không biết rõ nguồn file ứng dụng, các bạn có thể gặp vấn đề về quyền truy cập file, sign bit…. Các bạn chỉ nên làm theo cách này khi đã quen với Lotus Domino.
Chúc các bạn thành công.

Tạo ứng dụng Hello world!


hào các bạn!
Các phiên bản đầu tiên của IBM Lotus Domino chỉ cho phép các ứng dụng (Một số người gọi là database) chạy trên nên Lotus Notes. Nhưng bắt đầu từ bản Domino 5.c thì các ứng dụng của Lotus Domino (Mình xin gọi nhanh là ứng dụng Domino) bắt đầu hỗ trợ trên nền web (tất nhiên vẫn hỗ trợ chạy trên nền Lotus Notes) và chỉ thực sự tốt từ phiển bản 6.0, và tùy từng nền chạy ứng dụng khác nhau ta sẽ có các design khác nhau cho phù hợp. Từ bản Domino 8.0 IBM Lotus Domino đưa ra một định nghĩa mới là XPAGES cho phép một design chạy cả trên browser và cả trên Lotus Notes, tuy nhiên các kiến thức về lập trình Domino “cổ điển” vẫn không thể thiếu..
Trước tiên mình sẽ nói về cách thức phát triển một ứng dụng Domino theo cách “cổ điển”. Với các bạn mới bắt đầu viết ứng dụng Domino theo mình cũng không nên lao vào làm xpages ngay, các bạn có thể sẽ bị choáng ngợp bới các thành phần design của Domino.
Trong các bài viết của mình sẽ chủ yếu hướng đến lập trình trên nền web, vì hướng tới của mình là tạo các ứng dụng chạy xpages chứ không phải các ứng dụng “cổ điển” kia. xong cái gì cũng có gốc của nó, nên mình sẽ bắt đầu bằng những thứ “cổ điển”.
Sau đây mình sẽ demo các tạo một ứng dụng Hello World chạy trên browser.
Ứng dụng chạy trên browser là ứng dụng Domino có các thành phần design cho phép chạy trên nền web.
  1. Tạo một ứng dụng từ blank template (demo02.nsf)
  2. Mở ứng dụng vừa tạo trong Domino Designer
  3. Trong view Application của Domino Designer, double-click vào pages. click New page.
  4. Nhập tên page vào ô Name (ex: default).
  5. Trong phần soạn thảo nhập: Hello world!
  6. Save page
mở browser gõ địa chỉ: http://127.0.0.1/demo02.nsf/default?openpage
Vậy là bạn đã tạo được một ứng dụng domino có thành phần design chạy trên web rồi đấy.
Video:

Để đặt trang mặc định cho ứng dụng – trong Lotus Notes bạn click chuột phải vào ứng dụng – Application – Properties – chọn tab Launch (tab thứ 5 từ bên trái sang). Trong phần cấu hình này có 2 phần: cấu hình cho Notes và cấu hình cho Web. để cấu hình trang mặc định cho web thì trong phần When opened in a browser, chọn Open designated page, chọn trang mặc định  (default). ngoài mở thành phần mặc định là page ra bạn xem trong danh sách còn một số cách thành phần khác như xpages, frameset,….

Cho phép người dung khách (Anonymous) vào ứng dụng. trong Lotus Notes bạn click chuột phải vào ứng dụng – Application – Access control…, trong dialog Access control list to: click Add – nhập Anonymous – Trong User type:  people, Access: author, click ok.


Video:

Phần Access control list là phần rât quan trọng trong một ứng dụng domino, sau này mình sẽ có bài viết riêng về quản lý tài nguyên ứng dụng.
Tạm biệt!

Các thành phần design trong một ứng dụng Domino cơ bản.



Chắc hẳn với các bạn bắt đầu tìm hiểu các viết một ứng dụng trên nền Domino đều đặt ra câu hỏi “Cần những thứ gì để tạo một ứng dụng domino?” và “dữ liệu của nó được lưu trữ ở đâu?”
Với các bạn đã phát triển ứng dụng trên nền công nghệ khác (.net hay php….) thì thành phần design và dữ liệu được tách biệt riêng, như các trang web của asp hay của php đều đặt design… trên một web server (IIS, apache…), còn database thì đặt trên một server DBMS riêng (SQL, MySQL). Domino thì không giống thế, tất cả design, dữ liệu các ứng dụng Domino đều lưu vào file nsf hoặc ntf.
Các ngôn ngữ lập trình được sử dụng khi phát triển ứng dụng
  1. HTML (client)
  2. Javascript (client)
  3. Cascading Style Sheets (CSS) (client)
  4. Formula (Server).
  5. LotusScript (Server – Ngôn ngữ này có rất nhiều điểm giống MS Visual Basic).
  6. Java (Server).
  7. Simple action
Về Formula và LotusScript các bạn có thể xem trong tài liệu Help của Domino designer.
Như vậy để viết một ứng dụng Domino chạy trên nền web ta phải biết ít nhất 5/6 ngôn ngữ này (Theo tôi, có thể chọn LotusScript hoặc Java).
Các thành phần design trong ứng dụng
  1. Page: là thành phần design được sử dụng để hiển thị thông tin. Bạn có thể sử dụng page để viết một trang như trạng about, có thể sử dụng để viết các tài nguyên css, javascript, nhược điểm của page là khả năng truy vấn dữ liệu kém.
  2. Form: Mọi thứ bạn làm với page được thì đều có thể làm với form được, ngoài ra, form có khả năng truy vấn dữ liệu tốt. khi các bạn đã quen rồi các bạn sẽ thấy khi cần hiển thị các thông tin liên quan đến dữ liệu ta thường sẽ đều sử dụng form. Form cung cấp một cấu trúc để tạo và hiển thị các document (ở đây mình không dịch từ document để tránh nhầm lẫn với các tài liệu thông thường, mình sẽ giải thích kỹ hơn về trong khi nói về cấu trúc dữ liệu của domino).
  3. View: sử dụng để hiển thị các document theo một truy vấn nào đó. với các bạn đã làm việc với một MS SQL hoặc MySQL thì view của domino cũng thế
  4. Folder: giống view, xong các document không được lấy theo một truy vấn mà thực hiện bằng code.
  5. Frameset: Là tập hợp các HTML frame, nó chia một trang web của bạn thành các phần (session) khác nhau.
  6. Subform: Thành phần design giúp bạn chia nhỏ cấu trúc của một form
  7. Agent: là một chương trình độc lập (stand-alone programs) thực hiện một nhiệm vụ nào đó. Theo tôi có thể chia ra làm 2 loại agent:* Agent chạy tự động: là các agent chạy khi sảy ra một action của hệ thống. không được điều khiển bởi người dùng. như:
    * Agent bình thường: là các agent chạy khi sảy ra một action của người dùng, như sau khi load document, người dùng click một button….
  8. Resources: Các tài nguyên khác
    • Imagess
    • Files
    • Applets
    • Style Sheets
  9. Ngoài ra còn một số thành phần khác nhưng ít dụng sau này các bạn tự tìm hiểu.
Cấu trúc lưu trữ dữ liệu
Chắc hẳn lâu nay các bạn lập trình đều quen với kiểu dữ liệu quan hệ.  Dữ liệu của các ứng dụng Domino là kiểu dữ liệu phi quan hệ. Dữ liệu của domino được lưu trữ thành các document, trong document có các field.
Để các bạn dễ tưởng tượng, mình xin mạo muộn đưa ra một phép so sánh như sau: các field của domino giống như các trường trong một bảng của MS SQL, như vậy document sẽ giống như một bản ghi (record). Domino hoàn toàn không có khái niện table, chỉ có document là thực thể thể hiện cho một định dạng dữ liệu. ví dụ:
Trong một document lưu trữ thông tin của nhân sự Nguyễn Văn A ta có thể đưa ra một mô tả cấu trúc dữ liệu như sau:
Document:
Field Type Value
HoVaTen Text Nguyen Van A
NgaySinh DateTime 1/1/1970
QueQuan Text Ha Noi
DiaChi Text Ha Noi
SoCMTND Text 123456789
Ở trên ta có nói FORM cung cấp một cấu trúc để tạo và hiển thị document, vậy form và document có quan hệ với nhau như thế nào. Khi mình mới bắt đầu làm việc với domino mình bị nhầm lần là form nó giống như table trong MS SQL nhưng không phải vậy. Khi một document có field tên là form có giá trị trùng với tên một form design thì khi mở document ra domino sẽ sử dụng form đó để hiển thị thông tin về document này. Hoặc khi bạn gọi cậu lệnh save từ một form thì domino sẽ tạo một document có field tên là form trùng với tên form hiện tại và các field khác có giá trị trùng với các field được khai báo trên form. ohh, như vậy form thì khác gì table đâu? một điểm khác và cũng rât mở của Domino là bạn có thể thêm một trường vào document trong quá trình thực thi (on runtime). ngoài cách tạo document bằng cách ghi lại một form ra bạn có thể tạo document bằng code trong quá trình chạy chương trình. Không những thế, bạn còn có thể tạo ra các view, folder, thay đổi câu truy vấn của các view, xóa một field của document trong quá trình chạy.
Các thành phần thường dùng của một form
Ta thấy rằng form là một thành phần design rất quan trọng trong một ứng dụng domino, sau này khi làm việc với xpage thì form giống như thành phần khai báo các trường được sử dụng trong một document. Trong một form thường có các thành phần sau:
  1. Text
  2. Field
  3. Hotspot (Buttons…)
  4. Resource
  5. Computed text
  6. HTML text
  7. Embeded elements (view, folder)
Text và HTML text khác nhau chỗ nào: Text khi hiển thị trên browser sẽ giữ nguyên format, còn HTML text thì sẽ được đối xử như một đoạn mã HTML. như vậy để viết code HTML trên form các bạn phải chuyển từ text thành HTML text. Để làm thao tác này bạn chọn đoạn text cần chuyển – Menu Text – Pass_Thru HTML và ngược lại.
Ngoài ra còn các thành phần khác, bạn tham khảo thêm trong bộ help của Domino Designer (Lotus Domino Designer Basic User Guide and Reference > Application Design > Designing forms) .
URL Command

URL command là sự kết hợp của các đặc điểm của URL với một câu lệnh điều khiển các item như là một document hay view. cấu trúc của URL command có dạng
http://Host/DominoObject?Action&Arguments
Phần này trong tài liệu Help của Domino Designer nói rất kỹ, các bạn đọc trong này nhé (Lotus Domino Designer Basic User Guide and Reference > Application Design > URL commands for Web applications).
Mình xin cung cấp một số các command hay dùng
OpenForm: mở một form
OpenView: Mở một view hoặc folder
OpenAgent: Chạy một agent (cho phép chạy trên web).
OpenDocument: Mở document (dạng readonly)
EditDocument: Mở document (dạng editable)
DeleteDocument: Xóa document
OpenPage: Mở một trang
/?Login: đăng nhập
/?Logout: Đăng xuất
Với các thành phần như trên các bạn đã có thể phát triển được các ứng dụng Domino đơn giản rồi đấy. Trong một khuôn khổ một bài viết mình không thể đi hết và chi tiết các thành phần design của một Domino Application được, các bạn nên đọc kỹ hơn trong tài liệu help của Domino Designer.
Sau đây mình sẽ demo cách dụng một số thành phần trên để viết ứng dụng cho phép nhập, hiển thị thông tin nhân sự của một cơ quan.
Download vi du: http://www.mediafire.com/?br4zc4r2ge4fscc
Video:

Sử dụng Unicode trong java agent.


Mặc định Domino Designer đặt font là Cp1252 nên khi các bạn ghi lại java agent có chữ tiếng việt thì sẽ báo lỗi: “Some characters cannot be mapped using Cp1252 character encoding….”

Để cấu hình lại, từ giao diện của Domino Designer bạn click menu File – Preferences. trên cây menu bên trái chọn General – Wordspace. Trong phần Text encoding chọn Other -> UTF-8. Click OK.

Cách này mình thấy  chạy trên windows XP thì chạy tốt rồi nhưng vẫn bị lỗi một số ký tự như ‘đ’ khi chạy trên Windows Server 2003.

Truy xuất dữ liệu trong ứng dụng Domino!


Trong các bài viết trước mình đã giới thiệu về các thành phần (component) cơ bản và thường xuyên để tạo ra một ứng dụng domino. Bài này mình sẽ đưa ra các phương pháp để truy xuất dữ liệu trong một ứng dụng Domino.
Như các bạn đã biết, Một ứng dụng domino khi được tạo ra thì cả phần design và database được lưu trong cùng 1 file .nsf. Các đơn vị dữ liệu được lưu ở đây là các document, nó tương ứng với các record trong MS SQL. Ứng dụng Domino quản lý tài nguyên của nó thông qua các ID. với 1 document sẽ có tương ứng 2 loại ID là Notes ID và Universal ID (UNID).
  1. Truy xuất Document
    • Thông qua URL: bạn có thể sử dụng URL command để truy xuất và một document, cấu trúc của URL Command là
      Mở document: http(s)://host:port/[folder…]/[database.nsf]/[view]/[UNID]?OpenDocument
      Hiệu chỉnh: http(s)://host:port/[folder…]/[database.nsf]/[view]/[UNID]?EditDocument
      Xóa: http(s)://host:port/[folder…]/[database.nsf]/[view]/[UNID]?DeleteDocument
      @chat: Delete document thông qua 1 url, nếu vậy bạn ở 1 document ra, chỉ cần thay command opendocument bằng command deletedocument là xóa được rồi, thật là nguy hiểm. Cài này trong thực tế là mình đã gặp, nhiều người làm nhiều rồi, làn ứng dụng lớn rồi vẫn bị, cho người khác truy cập vào document, người ta thay command trên URL nó xóa béng mất :D. thực ra Domino quản lý tài nguyên rất chặt chẽ thông qua quyền truy cập và tài nguyên của người dùng, bạn chỉ được xóa document khi bạn được cấp quyền xóa trong Access Control List (ACL), và bạn có quyền hiệu chỉnh document. bạn chỉ được đọc , hiệu chỉnh các document khi bạn được cấp quyền truy cập. Cấp độ (Access level của bạn đến đâu, là author, là reader, là designer hay chỉ là depositor, bạn là người dùng trong ACL hay chỉ là default user v.v….). Khi đã bắt tay và viết 1 ứng dụng thương mại thật sự trên nền Domino, hãy chắc rằng bạn biết phải phân phát tài nguyên cho người dùng thế nào.????
    • Thông qua database: Từ database hiện tại, bạn có thể truy xuất Document khi có UNID hoặc Notes ID của document
      Ví dụ: Bạn có document có UNID là 858859600f579bd2472579140065033dSession session = getSession();
      AgentContext agentContext = session.getAgentContext();
      Database db = agentContext.getCurrentDatabase();
      Document doc = db.getDocumentByUNID(“858859600f579bd2472579140065033d”);
    • Thông qua view: Bạn có thể sử dụng cột đầu tiên của 1 view (cột này được sắp xếp) như 1 tập các key, sau đó truy xuất document thông qua các key này. ví dụ, mình có 1 view chứa danh sách người dùng tên là “dsnguoidung” và cột dầu tiên là tên đầy đủ (được sắp xếp tăng dần). mình muốn lấy tập các document những người có tên đây đủ là “Nguyễn Văn A”.Session session = getSession();
      AgentContext agentContext = session.getAgentContext();
      Database db = agentContext.getCurrentDatabase();
      View nguoiDung = db.getView(“dsnguoidung”);
      DocumentCollection dc = nguoiDung.getAllDocumentsByKey(“Nguyễn Văn A”);Và từ DocumentCollection này, ban có thể truy xuất và các document của người dùng có tên là “Nguyễn Văn A”, Nếu bạn chắc chắn rằng giá trị Nguyễn Văn A là duy nhất bạn có thể truy xuất và thẳng document đầu tiên đó bằng hàm Document ns = nguoiDung.getDocumentByKey(“Nguyễn Văn A”);. Mình có xem qua các tài liệu tối ưu thì thấy rằng đây là cách tốt để tìm kiếm document (tốt hơn nữa là sử dụng UNID hoặc Notes ID)
    • Thông qua hàm formula: Formula cung cấp một số hàm để lấy truy xuất vào Document, thương dùng nhất là DBColumn, hàm này sẽ lấy giá trị một cột của 1 view.
  2. Tìm kiếm dữ liệu:
    • Thông qua view: như trên
    • FTSearch command từ view: cấu trúc http(s)://host:port/[folder…]/[database.nsf]/[view]?SearchView&query=[giatri]. cấu trúc này sẽ tìm kiếm full-text một giá trị có trong view hiện tại. các bạn đọc kỹ hơn trong tài liệu help của Domino Designer nhé (Lotus Domino Designer Basic User Guide and Reference > Application Design > URL commands for Web applications)
    • FTSearch từ database/view/DocumentCollection trong code: Trong code bạn có thể Full-Text search từ một collection các document thông qua câu query (gần như SQL)- [Database/View/DocumentCollection].FTSearch(String query, int max, int sortopt, int otheropt). Bạn tham khảo thêm trong tài liệu Help của Domino Designer (Lotus Domino Designer Basic User Guide and Reference > Java/CORBA Classes > Java Classes A-Z > Database classLotus Notes > Search > Doing searches). Ở đây các bạn có thể thấy rằng FTSearch từ view thông qua URL command chỉ có thể search 1 giá trị, còn FTSearch từ 1 collection document có thể mở rộng ra tìm ở trường nào, kiểu dữ liệu là gì v.v…
    • Simple search: Cách search này chỉ áp dụng được với database. cầu query giống câu query được sử dụng khi bạn tạo view, query của nó là giá trị của một hàm formula, ví dụ:String query = “Select Form = \”NhanSu\” & Name=\”Dung\” & QueQuan=\”HaNoi\””;
      DocumentCollection dc = db.search(query);
      Chú ý: khi tìm kiếm dữ liệu trong ứng dụng Domino thì ta không thể sặp xếp theo một trường nào đó, hay group dữ liệu theo một trường nào đó như trong các DBMS như MS SQL được, tìm kiếm của Domino chỉ đưa ra được 1 tập các document, có thể được sắp xếp theo 1 điều kiện có trước nào đó là theo thời gian tạo, hoặc theo “điểm số truy cập” mà thôi. để sắp sếp lại dữ liệu ta phải viết các hàm sắp sếp, hoặc một cách đơn giản hơn là tạo 1 view, có các trường được sắp xếp, sau đó lấy dữ liệu theo từng entry của view.
    Trên đây là các cách thường dùng để truy xuất 1 hoặc 1 collection các document trong 1 ứng dụng domino. Các bạn nên đọc kỹ các bài viết trong help của Domino Designer mình đã đưa ra ở trên để biết chi tiết hơn.
Ví dụ cho bài viết: http://1drv.ms/1NBVZZK
Hoặc Ví dụ cho bài viết 2 : http://www.mediafire.com/file/d86oau3mcg13gkm/CollectDocument.rar
Video:

Download Lotus Notes & Domino 8.5.3


Không rầm rộ như Microsoft, không hào nhoáng như Apple.
Sau một thời gian dài chờ đợi, cuối cùng IBM đã đưa ra phiên bản Lotus Notes & Domino 8.5.3. sau đây là link download bản trial
Lotus Domino: http://www14.software.ibm.com/webapp/download/search.jsp?pn=Lotus+Domino
Lotus Notes & Domino Administrator: http://www.ibm.com/developerworks/downloads/ls/lsndad/
Domino Designer: http://www.ibm.com/developerworks/downloads/ls/dominodesigner/index.html

Sử dụng JQuery trong app Lotus Domino code!


Jquery là một thư viện javascript đa trình duyệt hoàn toàn miễn phí, được thiết kế để đơn giản hóa lập trình javascript.
Download tại trang chủ của jquery.com
Để sử dụng JQuery trong ứng dụng Lotus Domino, đầu tiên bạn phải download source file trên trang chủ của Jquery, sau đó import vào File resource của ứng dụng.
Khai báo trong form header:
<script style=’text/javascript’ language=’javascript’ src=’jquery-1.7.1.min.js’></script>
JQuery declaration 
Và sau đó là viết code.
Video:



Setup XPages Extension Library


XPages Extension Library là một tập hợp các control được xây dựng sẵn cho người viết ứng dụng Domino.
Download tại: http://www.openntf.org/internal/home.nsf/releases.xsp?action=openDocument&name=XPages%20Extension%20Library&documentId=null
Chú ý: ExtLib cho Domino 8.5.2 có tên bắt đầu là 8.5.2.xxx (ví dụ: 8.5.2.201110260152NTF) và ExtLib cho domino 8.5.3 có tên bắt đầu là 853 (ví dụ: 853.20120124-1243a).
Sau khi download file .zip về, các bạn giải nén ra
ExtLib Package
ExtLib Package
Cài đặt cho Domino Server:
1. Giải nén file updateSite.zip, sau khi giải nén các bạn sẽ được 2 thư mục (featuresplugins) và file site.xml.
2. Copy các file trong thư mục features vào thư mục [Domino]\data\domino\workspace\applications\eclipse\features
Ví dụ: C:\IBM\Lotus\Domino\data\domino\workspace\applications\eclipse\features
3. Copy các file trong thư mục plugins vào thư mục [Domino]\data\domino\workspace\applications\eclipse\plugins
Ví dụ: C:\IBM\Lotus\Domino\data\domino\workspace\applications\eclipse\plugins
 Video:

Cài đặt cho Lotus Notes:
1. Cho phép Lotus Notes cài đặt thêm plugin. Vào File -> Preferences -> Domino Designer, tick chọn Enable Eclipse plug-in install.
2. Cài đặt plugin: Vào File -> Application -> Install…  Cửa sổ Install/Update sẽ hiện ra
Install ExtLib For Notes
Install ExtLib For Notes
 Chọn Search for new features to install -> Next.
Chọn Add zip/Jar location và chọn đến file updateSite.zip.
Sau đó click Next và làm theo hướng dẫn.
Sau khi cài đặt xong Notes sẽ bắt bạn khởi động lại.
Video: 


Cài đặt và cấu hình lotus domino


Việc cài đặt domino cũng đơn giản như việc cài đặt các ứng dụng khác, ở đây tôi chỉ hướng dẫn các bạn cài đặt và cấu hình ở mức đơn giản nhất.
Các bước cài đặt và cấu hình lotus domino.
  1. Chạy file cài đặt: Sau khi chạy file cài đặt, các file cài đặt sẽ được extract ra ổ cứng.
  2. Thực hiện quá trình cài đặt: làm theo hướng dẫn trên màn hình (chủ yếu là click nút next) và chờ quá trình copy file hoàn tất.
  3. Sau khi quá trình copy file hoàn tất, click vào biểu tượng Lotus Domino Server để bước vào quá trình setup server (Xem video).
  4. Trong qua trình cài đặt các bạn có thể tick chọn tạo file id của admin sau này dùng hoặc có thể tạo file này khi lần đầu tiên cài notes
  5. Sau khi setup server, mở browser và gõ địa chỉ http://127.0.0.1 bạn sẽ thấy man hình giao diện mặc định của lotus domino



Một số bước cấu hình đơn giản: Các bạn xem trong phần cài đặt và cấu hình Lotus notes nhé, vì cấu hình domino server được thực hiện thông qua lotus admin

Saturday, August 1, 2015

Cách a-c-ti-v-a-te cho mọi version


– Trước tiên, bạn cần mở cửa sổ Command Prompt (với quyền quản trị Admin)
Bằng cách sau, nhấn phím tắt Windows + X => Chọn Command Prompt (Admin)
Hoặc Search “cmd” sau đó nháy chuột phải và chọn Run as Administrator
– Đánh lần lượt 3 dòng Code dưới đây, Enter khi xong mỗi dòng!
Cấu trúc như sau, bạn thay đoạn Key nếu cài các phiên bản tương ứng. 
slmgr /ipk NPPR9-FWDCX-D2C8J-H872K-2YT43
slmgr /skms kms.xspace.in
slmgr /ato
Windows10Professional
W269N-WFGWX-YVC9B-4J6C9-T83GX
Windows10Professional N
MH37W-N47XK-V7XM9-C7227-GCQG9
Windows10Enterprise
NPPR9-FWDCX-D2C8J-H872K-2YT43
Windows10Enterprise N
DPH2V-TTNVB-4X9Q3-TJR4H-KHJW4
Windows10Education
NW6C2-QMPVW-D7KKK-3GKT6-VCFB2
Windows10Education N2WH4N-8QGBV-H22JP-CT43Q-MDWWJ
Windows10Enterprise2015 LTSB
WNMTR-4C88C-JK8YV-HQ7T2-76DF9
Windows10Enterprise2015 LTSB N2F77B-TNFGY-69QQF-B8YKP-D69TJ

NHỮNG ĐIỂM LƯU Ý KHI CÀI ĐẶT VÀ NHỮNG ĐIỂM MỚI TRONG BUILD 10.10240.16387


Những điểm cần lưu ý khi cài đặt và những cái mới ban đầu về build này.
Lưu ý đầu tiên:
+ Những bạn nào có ý định nâng cấp hoặc cài mới bằng ISO thì phải chuẩn bị key cài đặt (là key đã cung cấp ở các link down cũng là key active) Bạn Note – ghi lại ra giấy hoặc chụp ảnh vào điện thoại.
+ Nếu cài bằng ISO phải active lại.
+ Nâng cấp = ISO hầu như không giữ được gì cả – Chỉ cho tùy chọn giữ lại file cá nhân.
+ Sau khi nâng cấp những lỗi trên build cũ vẫn không khắc phục được.
+Sau khi nâng cấp file Windows.old quá khủng (của mình ~22GB).
Tóm lại: Không nên nâng cấp bằng ISO mà cài mới luôn cho sạch và nhanh.

Ultimate list of all Windows keyboard shortcuts with Win keys


Ever since Windows 95, the Windows key (or Win key) is ubiquitous on PC keyboards. With each new release of Windows, Microsoft has added new keyboard shortcuts with the Win key. Here is a complete list of all Winkey shortcuts.

The Win key when pressed by itself opens the Start Menu on systems which have it. On Windows 8 it opens the Start screen. Here are all the other Win key combinations which you may not be aware of:
Win+A: Does nothing
Win+B: Moves the focus to the notification area (System tray)
Win+C: Shows Charms, and the date & time (Windows 8 and later)
Win+D: Shows the Desktop. When you press Win+D again, it restores the open windows.
Win+E: Opens Explorer
Win+F: Opens file search. Prior to Windows 8, this opened Explorer search. Now it opens the Search pane with Files selected for searching
Win+Ctrl+F: Opens the Find Computers dialog (for Active Directory/domain joined PCs)
Win+G: Brings gadgets to the top of other windows.
Win+H: Opens the Share charm on Windows 8
Win+I: Opens the Settings charm on Windows 8
Win+J: Does nothing
Win+K: Opens the Devices charm
Win+L: Locks the PC or lets you switch users
Win+M: Minimizes all windows. Win+Shift+M does undo minimize all
Win+N: Does nothing in Windows. In Microsoft OneNote, it opens a new Note.
Win+O: Locks or unlocks the orientation of the device if it's a tablet PC so if even if you rotate it, it won't rotate
Win+P: Opens the UI to project to another display or projector
Win+Q: Opens the app specific search in Windows 8.1. e.g. In Modern IE, it will search Internet Explorer. In PC Settings, it will search Settings and so on.
Win+R: Opens the Run dialog
Win+S: Opens the search with "Everywhere" selected
Win+T: Focuses on the taskbar icons. Pressing Win+T again moves the focus to the next icon.
Win+U: Opens Ease of Access Center (or Utility Manager in Windows XP/2000)
Win+V: Focuses on the Metro style toast notifications and cycles through them
Win+W: Opens the search pane with Settings selected
Win+X: Opens the Power Users menu on Windows 8 and later. On Windows 7/Vista, it opens Mobility Center
Win+Y: Does nothing
Win+Z: Shows the App Bar in a Modern app, same as right clicking inside a Modern app
Win+1/2/3....0: Opens or switches to the correspondingly numbered Taskbar button
Win+'+': Opens Magnifier and zooms in
Win+'-': Zooms out in Magnifier
Win+Esc: Exits Magnifier if it's running
Win+F1: Opens Help and Support
Win+Pause/Break: Opens System Properties
Win+Print screen: Takes a screenshot in Windows 8 and saves it to the Screenshots folder
Win+Home: Same as Aero Shake (minimizes all windows except the foreground window)
Win+Left arrow key: Snaps a desktop app's window to the left. In Windows 8.1, it also snaps a Modern app's window to the left.
Win+Right arrow key: Snaps a desktop app's window to the right. In Windows 8.1, it also snaps a Modern app's window to the right.
Win+Up arrow key: Maximizes a window. In Windows 8.1, it also makes a snapped Modern app full screen.
Win+Down arrow key: Minimizes a window. In Windows 8.1, it suspends a Metro app and takes you to either the Desktop or the Start screen depending on your Start screen settings
Win+Page Down: In Windows 8.0, it moves a Modern app's window to the next display if multiple monitors are connected. In Windows 8.1, this shortcut is moved to Win+Shift+Right arrow key to be consistent with desktop apps
Win+Page Up: moves a Modern app's window to the previous display if multiple monitors are connected. In Windows 8.1, this shortcut is moved to Win+Shift+Left arrow key to be consistent with desktop apps
Win+Enter: Starts Narrator (on Windows 8 and later)
Win+Alt+Enter: Starts Media Center
Win+Space: In Windows 7, it does an Aero Peek. In Windows 8, it switches the input language
Win+Comma (,): In Windows 8, this is the new key for Aero Peek
Win+Period (.): Shows you which is the active window (useful when two Modern apps are snapped).
Win+Tab: In Windows 8 and later, when you press Win+Tab and release it, you can switch between Modern apps, the Start screen and the Desktop. If you continue to hold the Win key, it will show you the Switcher UI and when you let go of the Win key, it will switch. In Windows 7/Vista, Win+Tab shows Flip 3D which operates similarly.
Ctrl+Win+Tab: Shows the Switcher UI in sticky mode so you can use keyboard arrow keys or mouse to switch. Ctrl+Win+Tab also opens Flip 3D in sticky mode in Windows 7/Vista
Let us know if we missed any Win key shortcuts and tell us if you discovered any new ones from this article. :)

How to install a MUI language CAB file in Windows 10




In the previous post I collected and posted here a bunch of direct links to MUI language packs for Windows 10. It is useful for users who need to install them on multiple PCs. They will save their Internet bandwidth and time by not downloading them again on each PC. Instead, they can save the offline package and use it for future installs. In this article, we shall see how to install these downloaded language packs.

First, make sure that you have the correct language pack matching your OS (32-bit or 64-bit). Installing the CAB MUI language packs requires few steps.
Follow these simple instructions to install the CAB files:
  1. Press Win + R keys together on the keyboard to bring up the Run dialog.
    Tip: see the ultimate list of all Windows keyboard shortcuts with Win keys.
  2. Type the following in the Run box:
    lpksetup.exe
    lpksetup windows 10
    Press Enter.
  3. The "Install or Uninstall display languages" wizard will appear on the screen.
    install language pack Windows 10
    Click the Install display languages button.
  4. In the next page of the wizard, click Browse and pick the *.cab file of the MUI language you downloaded. browse for language CAB Windows 10
  5. Click the Next button:
    russian windows 10
    Wait till it is installed. This can take a considerable amount of time and disk space.
    installing
    A System Restore point will also be created first.
    Windows MUI installed
  6. To switch to the installed language pack for your user account, you have to open the following Control panel applet:
    Control Panel\Clock, Language, and Region\Language
  7. Click here "Add a language and add the language you installed:
    add a language Windows 10 add new language Windows 10
  8. Click the Options link on the right side of the just installed language. Windows 10 language options link
    There, you will find the ability to activate it as the main display language.
    set display language Windows 10
    Log out and log in again for the language to change.
That's it. Now you know how to deal with downloaded *.cab files for MUI language packages.

Download official MUI language packs for Windows 10 build 9926


Microsoft has released MUI (Multilingual User Interface) language packs for Windows 10 build 9926. These language packs allow you to apply a new display language for your OS. While all of them are available through Windows Update or via the Language Control Panel in Windows 10, you might be interested in downloading the language pack you use permanently to your hard drive, e.g. to install it on multiple PCs at once, or if you don't want to download the huge files all over again after you reinstall Windows. Here is a huge set of direct links for MUI language packs for Windows 10 build 9926.

Before you proceed, read the following article: How to install an MUI language CAB file in Windows 10.

Windows 10 64-bit (x64) MUI language packs

windows 10 logo banner 3
LanguageDownload link
ar-sa (Arabic)Download link
ca-es (Catalan "Spain")Download link
cs-cz (Czech)Download link
de-de (German)Download link
en-gb (English - United Kingdom)Download link
en-us (English - United States)Download link
es-es (Spanish)Download link
es-mx (Spanish "Latin America")Download link
fi-fi (Finnish)Download link
fr-fr (French)Download link
fr-ca (French "Canada")Download link
hi-in (Hindi "India")Download link
it-it (Italian)Download link
ja-jp (Japanese)Download link
ko-kr (Korean)Download link
nl-nl (Dutch)Download link
pl-pl (Polish)Download link
pt-br (Portuguese - Brazil)Download link
ru-ru (Russian)Download link
sv-se (Swedish)Download link
th-th (Thai)Download link
tr-tr (Turkish)Download link
vi-vn (Vietnam)Download link
zh-cn (Chinese - Simplified)Download link

Windows 10 32-bit (x86) MUI language packs

LanguageDownload link
ar-sa (Arabic)Download link
ca-es (Catalan "Spain")Download link
cs-cz (Czech)Download link
de-de (German)Download link
en-gb (English - United Kingdom)Download link
en-us (English - United States)Download link
es-es (Spanish)Download link
es-mx (Spanish "Latin America")Download link
fi-fi (Finnish)Download link
fr-fr (French)Download link
fr-ca (French "Canada")Download link
hi-in (Hindi "India")Download link
it-it (Italian)Download link
ja-jp (Japanese)Download link
ko-kr (Korean)Download link
nl-nl (Dutch)Download link
pl-pl (Polish)Download link
pt-br (Portuguese - Brazil)Download link
ru-ru (Russian)Download link
sv-se (Swedish)Download link
th-th (Thai)Download link
tr-tr (Turkish)Download link
vi-vn (Vietnam)Download link
zh-cn (Chinese - Simplified)Download link

 
Design by IT Manager | Bloggerized by Themes For IT Managers | MIS-DUONG