Форум программистов, компьютерный форум, киберфорум
HCL Notes: Программирование
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.51/114: Рейтинг темы: голосов - 114, средняя оценка - 4.51
0 / 0 / 0
Регистрация: 29.04.2006
Сообщений: 364
1

About This Database

11.02.2008, 11:34. Показов 20561. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
можно ли как-то редактировать этот help, кроме как в дизайнере?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.02.2008, 11:34
Ответы с готовыми решениями:

SQLite DataBase - почему подчеркивает DataBase db: пишет (DataBase cannot be resolved to a type)
Здравствуйте! помогите понять почему подчеркивает DataBase db; пишет (DataBase cannot be...

ASP + Restore database ошибка Exclusive access could not be obtained because the database is in use.
На страничке ASP я вызываю скрипт, который восстанавливает базу данных из бэкапа. Но, если кто-то...

Ошибка: Microsoft JET Database Engine error '80040e09' Cannot update. Database or object is read-only.
Microsoft JET Database Engine error '80040e09' Cannot update. Database or object is read-only. ...

Cannot determine embedded database driver class for database type NONE
Подскажите, что делать с этой гадостью. Был рабочий сайт все полностью работало, было даже...

16
0 / 0 / 1
Регистрация: 30.06.2007
Сообщений: 2,153
11.02.2008, 11:37 2
Конечно!
Берёшь документ хелпа (либо через NotesNoteCollection, либо по предефайненому NoteID (из головы не помню))
Там есть RT поле "$Body"
Вот оно то нам и нужно.

Я его редактирую в DialogBoxе
0
0 / 0 / 0
Регистрация: 29.04.2006
Сообщений: 364
11.02.2008, 12:20 3
что-то не получается этот help взять...
если через NoteID,то надо его сперва узнать...
NotesNoteCollection -> notesNoteCollection.SelectHelpAbout занимается постороением колекций, но это не то
0
0 / 0 / 1
Регистрация: 30.06.2007
Сообщений: 2,153
11.02.2008, 12:24 4
Для: oxystile
Это то, в NotesNoteCollection получишь (метод GetFirstNoteID) NoteID HelpAbout документа.
Ну а получить документ по NoteID, думаю, труда не составит.
0
0 / 0 / 0
Регистрация: 29.04.2006
Сообщений: 364
11.02.2008, 12:55 5
в итоге, что-то типа:
Dim session As New NotesSession
Dim db As NotesDatabase
Set db = session.CurrentDatabase
Dim doc As NotesDocument
Dim workspace As New NotesUIWorkspace

REM Create note collection
Dim stream As NotesStream
Set stream = session.CreateStream
path$ = "c:\dxl\"
filename$ = Left(db.FileName, Len(db.FileName) - 3) & "dxl"
filename$ = path$ & filename$
Dim nc As NotesNoteCollection
Set nc = db.CreateNoteCollection(False)
nc.SelectHelpAbout = True
Call nc.BuildCollection
Msgbox""

nid = nc.GetFirstNoteId
Set doc = db.GetDocumentByID(nid)
Dim t As String
t=doc.Form(0)
Call workspace.DialogBox ( t, True, True, True, True,False, True, "text",doc )

????
0
0 / 0 / 0
Регистрация: 11.09.2006
Сообщений: 373
11.02.2008, 14:54 6
Для: oxystile
А документы эти в дизайнере Вы предварительно создали?

Для: Omh
Для: oxystile
код, открывает About документ.. вот только не догоню как поле $Body на форму присабачить? Дизайнер говорит что такое поле уже есть..

Код
Dim ws As New NotesUIWorkspace
Dim s As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim nc As NotesNoteCollection
Dim item As NotesItem

Set db = s.CurrentDatabase

Set nc = db.CreateNoteCollection(False)
nc.SelectHelpAbout = True
Call nc.BuildCollection

nid = nc.GetFirstNoteId
Set doc = db.GetDocumentByID(nid)
Set item = doc.GetFirstItem("$Body")
Call doc.ReplaceItemValue("Body",item.Values)
Call ws.DialogBox ("MyAboutForm", False, False, False, True,False, False, "Help About Document",doc )
а что бы сохранить поле Body, его ведь, как RT поле, из NotesDocument не получишь?
0
0 / 0 / 1
Регистрация: 30.06.2007
Сообщений: 2,153
11.02.2008, 14:59 7
Для: fvoice
Берёшь HA документ, берёшь в нём айтем "$Body", копируешь куда надо, в какое хочешь поле, в нужный момент возвращаешь обратно.
0
0 / 0 / 0
Регистрация: 11.09.2006
Сообщений: 373
11.02.2008, 15:03 8
Для: Omh
что значит НА?
Поле Rich Text, как его обновить при возврате из DialogBox-а?
0
0 / 0 / 1
Регистрация: 30.06.2007
Сообщений: 2,153
11.02.2008, 15:09 9
HA = HelpAbout
В форме диалогбокса на QueryClose написать

Код
If Not Source.DialogBoxCanceled Then Call Source.Refresh(True)
Ток никому не говори, это секрет :D
0
0 / 0 / 0
Регистрация: 29.04.2006
Сообщений: 364
11.02.2008, 15:18 10
Для: fvoice

HelpAbout создан
кстати, а откуда код вообще вызывается (action, кнопка на HelpAbout ,у меня просто не везде дебаггер срабатывает)
0
0 / 0 / 0
Регистрация: 29.04.2006
Сообщений: 364
11.02.2008, 15:40 11
и не сохраняются изменения в поле $Body
0
0 / 0 / 1
Регистрация: 30.06.2007
Сообщений: 2,153
11.02.2008, 15:41 12
Сохранаются, у меня всё работает.
Ковыряй дальше
0
0 / 0 / 0
Регистрация: 29.04.2006
Сообщений: 364
11.02.2008, 16:31 13
где у меня ошибка.
1) на HA кнопка с кодом
нажимаю, появляется диалог бокс, там поле Body изменяю.
Нажимаю -ok-
Call ws.DialogBox ("MyAboutForm", False, False, False, True,False, False, "Help About Document",doc )
-последняя строка кода, т.к. поле в HA тоже наз-ся Body и соответсвенно должно обновиться

2) в MyAboutForm на QueryClose If Not Source.DialogBoxCanceled Then Call Source.Refresh(True)
0
0 / 0 / 1
Регистрация: 30.06.2007
Сообщений: 2,153
11.02.2008, 16:35 14
<!--QuoteBegin-oxystile+12:02:2008, 16:18 -->
<span class="vbquote">(oxystile @ 12:02:2008, 16:18 )</span><!--QuoteEBegin-->поле в HA тоже наз-ся Body
[snapback]97803" rel="nofollow" target="_blank[/snapback]?[/quote]
Нет, поле в HA называеться $Body
Переносить надо руками.
Я делаю так: создаю временный док, копирую в него поле "$Body" из HA дока (в поле "Body").
Открываю этот док на редактирование в диалогбоксе с RichtextLight, после окея сохраняю временный док, получаю поле "Body" , копирую его в поле "$Body" в HA.
Сохраняю HA.
Пара особенностей есть, но в целом работает.
0
0 / 0 / 0
Регистрация: 29.04.2006
Сообщений: 364
11.02.2008, 17:39 15
Спасибо получилось!
0
14.02.2008, 10:01 16
Цитата Сообщение от fvoice
Для: oxystile
А документы эти в дизайнере Вы предварительно создали?

Для: Omh
Для: oxystile
код, открывает About документ.. вот только не догоню как поле $Body на форму присабачить? Дизайнер говорит что такое поле уже есть..

Код
Dim ws As New NotesUIWorkspace
Dim s As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim nc As NotesNoteCollection
Dim item As NotesItem

Set db = s.CurrentDatabase

Set nc = db.CreateNoteCollection(False)
nc.SelectHelpAbout = True
Call nc.BuildCollection

nid = nc.GetFirstNoteId
Set doc = db.GetDocumentByID(nid)
Set item = doc.GetFirstItem("$Body")
Call doc.ReplaceItemValue("Body",item.Values)
Call ws.DialogBox ("MyAboutForm", False, False, False, True,False, False, "Help About Document",doc )
а что бы сохранить поле Body, его ведь, как RT поле, из NotesDocument не получишь?
Set doc = db.GetDocumentByID(nid)
А уникальный ключ, текущего документа (из которого вызывается DialogBox), как определяется? nid - как получить?
0 / 0 / 1
Регистрация: 30.06.2007
Сообщений: 2,153
14.02.2008, 10:17 17
Для: Денис Кириченко
Ты вообще можешь прям гекущий док открывать в диалоге.


Код
Dim ws As New NotesUIWorkspace
Dim uiDoc As NotesUiDocument
Dim Doc As NotesDocument
Set uiDoc = ws.CurrentDocument
Set Doc = uiDoc.Document

If ws.DialogBox("(FORM)",True, True, False, False, False, False, "TITLE", [b]Doc[/b], True) = True Then

End If
0
14.02.2008, 10:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.02.2008, 10:17
Помогаю со студенческими работами здесь

Ошибка СУБД: Microsoft OLE Provider for SQL Server: The transaction log for database “DataBase” is full.
Иногда при работе 1С возникает ошибка следующего характера: Ошибка СУБД: Microsoft OLE...

Помогите поднять клиента: Unable to connect to database server: unable to start database engine
Есть сервре Sybase SQL Anywhere 5.0 к нему настроен драйвер ODBC с помощью которого поднимается db...

Can't create database (database exists)
После того, как я напишу код ниже, создастся таблица. mysql_connect(DB_HOST, DB_LOGIN,...

CREATE DATABASE в ALTER DATABASE
CREATE DATABASE Archive ON PRIMARY ( NAME = Arch1, FILENAME = 'c:\data\archdat1.mdf'),...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru