Gender: Male Industry: Technology Occupation: System Supervisor Location: Residential Hoang Gia, Ward No 2, My Hanh Nam Village, Duc Hoa DIST, Long An Province Introduction: Cool.... Interests: Microsoft OS, Networking, RedHat Linux, System Administration, ... System Integration : IBM, Email Systems : IBM Lotus notes and Domino, VOIP,
...This is my personal and educational blog site and this has posts which are related to my research and interesting areas on Information Technology... Please feel free to comment on any technical/Article matters on this regard.
Thanks You !
NGÔ MINH TUẤN
Gender: Male Industry: Technology Occupation: IT System Administration Location: 40/2, Nguyen Gian Thanh street, Ward 15
District 10 – Ho Chi Minh City. Introduction: Cool. Interests: Microsoft OS, Networking, System Administration, System Integration : IBM, Email Systems : IBM Lotus notes and Domino, Mail Mdaemon, Microsoft Exchange
Contact : Email: ngo.tuan@yahoo.com
Skype: Ngo.TuanIT
Certificate
This is My Pic
MISDUONG
This is featured post 2 title
Replace these every slider sentences with your featured post descriptions.Go to Blogger edit html and find these sentences.Now replace these with your own descriptions.
This is featured post 3 title
Replace these every slider sentences with your featured post descriptions.Go to Blogger edit html and find these sentences.Now replace these with your own descriptions.
This is featured post 4 title
Replace these every slider sentences with your featured post descriptions.Go to Blogger edit html and find these sentences.Now replace these with your own descriptions.
This is featured post 5 title
Replace these every slider sentences with your featured post descriptions.Go to Blogger edit html and find these sentences.Now replace these with your own descriptions.
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)
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é):
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.
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.
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.
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.
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.
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.
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).
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
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
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:
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:
Từ giao diện IBM Lotus Notes
Copy template design lên server (có thể là server local) nếu cầu (Xem thêm ở video thứ 2).
File – Application – New, hoặc ấn phím tắt Ctrl + N. Chương trình sẽ mở ra dialog New Application
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]
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.
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:
Từ giao diện Domino Administrator, mở server chứa application cần đăng ký
Files – Chọn application
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.
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.
Tạo một ứng dụng từ blank template (demo02.nsf)
Mở ứng dụng vừa tạo trong Domino Designer
Trong view Application của Domino Designer, double-click vào pages. click New page.
Để đặ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!
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
HTML (client)
Javascript (client)
Cascading Style Sheets (CSS) (client)
Formula (Server).
LotusScript (Server – Ngôn ngữ này có rất nhiều điểm giống MS Visual Basic).
Java (Server).
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
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.
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).
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ế
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.
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.
Subform: Thành phần design giúp bạn chia nhỏ cấu trúc của một form
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….
Resources: Các tài nguyên khác
Imagess
Files
Applets
Style Sheets
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:
Text
Field
Hotspot (Buttons…)
Resource
Computed text
HTML text
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:
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.
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).
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.
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 class và Lotus 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.
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>
Và sau đó là viết code.
Video:
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.
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.
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.
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).
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
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
– 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.
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. :)
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:
The "Install or Uninstall display languages" wizard will appear on the screen. Click the Install display languages button.
In the next page of the wizard, click Browse and pick the *.cab file of the MUI language you downloaded.
Click the Next button: Wait till it is installed. This can take a considerable amount of time and disk space. A System Restore point will also be created first.
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
Click here "Add a language and add the language you installed:
Click the Options link on the right side of the just installed language. There, you will find the ability to activate it as the main display language. 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.
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.