Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 проект - регистрация служебных документов  [new]
mers
Member

Откуда: Иркутск
Сообщений: 19
Всем привет! Хочу сразу извиниться, если вопрос покажется странным или не по адресу. Нужна система регистрации документов в небольшой госконторе. Документы лежат в виде Word-файлов, название которых формируется след.образом-код + исх.номер (руками, руками, господа). Хотелось бы слепить на А2к базу, чтобы при составлении документа, автоматом формировался номер документа, запускался Word и т.д. Теперь главное: 1.Стоит ли это делать на Access ?
2.Если да, то через OLE -?
3. Как перенести сформированный номер в имя.doc - файла?
Может есть готовые решения, буду весьма признателен за любую информацию. P.S. Не для коммерческого использования ;-)
25 окт 02, 07:29    [68742]     Ответить | Цитировать Сообщить модератору
 Re: проект - регистрация служебных документов  [new]
mahoune
Member

Откуда: Moscow
Сообщений: 5664
А стОит-ли брать A2000 может все ж на Word макросе написАть? Я подобное исполнял - ничего так! Да и потом, я так думаю, но ниразу не проверял! Можно написать макрос в Word или просто функцию, которая будет всегда подгружена, а ты ее из Access'а запускать будешь!
25 окт 02, 09:37    [68761]     Ответить | Цитировать Сообщить модератору
 Re: проект - регистрация служебных документов  [new]
sFx
Member

Откуда:
Сообщений: 256
1. аксес это приложения для постоения БД. если тебе нужно только название формировать, то тут как правильно посоветовали достаточно макроса, а если ты хочешь вести БД скажем с названием док-тов, кратким описанием, кто создал и т.д. тогда можно делать и аксес.
2. OLE - это если ты захочешь внедрять элементы ворда в аксес, а так это не нужно.
3. просто сохранят под этим именем.
25 окт 02, 10:11    [68776]     Ответить | Цитировать Сообщить модератору
 Re: проект - регистрация служебных документов  [new]
mers
Member

Откуда: Иркутск
Сообщений: 19
Хотелось бы иметь БАЗУ, с поиском, статистикой и прочей ерундой :-).
2sFX Простите неразумному "просто сохранять под этим именем" это внедренные OLE объекты? А если без OLE, то какие могут быть еще варианты?
25 окт 02, 12:36    [68877]     Ответить | Цитировать Сообщить модератору
 Re: проект - регистрация служебных документов  [new]
Makc
Member

Откуда:
Сообщений: 285
2 mers:
Хочу уточнить вопрос:
Как у Вас работает система документооборота?
Документы произвольной формы или используются разработанные шаблоны?

Если документы можно жестко типизировать, т. е. выделить из них типы и определить атрибуты для каждого типа, то я бы посоветовал информацию об атрибутах и типах документов хранить в БД с вертикальной структурой (attr_id, doc_type_id, attr_type, bookmark_name) а инфу о сущностях документа хранить в таблице вида (doc_id, attr_id, attr_value) и передовать в вордовский шаблон через bookmark'и.
25 окт 02, 12:53    [68884]     Ответить | Цитировать Сообщить модератору
 Re: проект - регистрация служебных документов  [new]
NX
Member

Откуда:
Сообщений: 102
Может помошь, если разберешься...

Private Sub Number_DblClick(Cancel As Integer)
Dim WordApp As Word.Application
Dim Document As Word.Document, Range As Word.Range Set FS = CreateObject("Scripting.FileSystemObject")
' открыть документ
Set WordApp = CreateObject("Word.Application")
If FS.FileExists(Setting("Акты выполненых работ", "tFolders") & "\" & "АКТ ВЫПОЛНЕННЫХ РАБОТ_" & Me.Number & "_" & Me.Date & ".doc") Then
WordApp.Application.Documents.Open Setting("Акты выполненых работ", "tFolders") & "\" & "АКТ ВЫПОЛНЕННЫХ РАБОТ_" & Me.Number & "_" & Me.Date & ".doc"
WordApp.Application.Visible = True
Set FS = Nothing
Set Range = Nothing: Set Document = Nothing: Set WordApp = Nothing: Set RS = Nothing
Exit Sub
End If
WordApp.Application.Documents.Add "АКТ ВЫПОЛНЕННЫХ РАБОТ", , , True
WordApp.Application.Visible = True
Set Document = WordApp.Application.ActiveDocument
Set Range = Document.Range

Set RS = CurrentDb.OpenRecordset("SELECT * FROM qJobsActs WHERE Number=""" & Me.Number & """")
' заполнить поля документа
Range.Find.Execute FindText:="%DocNumber", ReplaceWith:=RS.Fields("Number"), Replace:=wdReplaceAll
Range.Find.Execute FindText:="%Vendor", ReplaceWith:=RS.Fields("Vendor"), Replace:=wdReplaceAll
Range.Find.Execute FindText:="%VDirector", ReplaceWith:="генерального директора " & RS.Fields("DSurname") & " " & Left(RS.Fields("DName"), 1) & ". " & Left(RS.Fields("DPatronymicName"), 1) & ".", Replace:=wdReplaceAll
Range.Find.Execute FindText:="%Customer", ReplaceWith:=RS.Fields("Customer"), Replace:=wdReplaceAll

Document.SaveAs Setting("Акты выполненых работ", "tFolders") & "\" & _
"АКТ ВЫПОЛНЕННЫХ РАБОТ_" & Me.Number & "_" & Me.Date & ".doc", wdFormatDocument, , , False
RS.Close
Set Range = Nothing: Set Document = Nothing: Set WordApp = Nothing: Set RS = Nothing

End Sub
25 окт 02, 13:15    [68900]     Ответить | Цитировать Сообщить модератору
 Re: проект - регистрация служебных документов  [new]
mers
Member

Откуда: Иркутск
Сообщений: 19
2Макс Документы формируются на основе готовых шаблонов.
1.Не совсем понял, что значит "инфа о сущностях документа" - краткое содержание ? Тогда зачем ее передавать в шаблон ворда?
2.Если можно приведи пример типов и атрибутов документа, раньше никогда с документами не работал :-(

2NX Спасибо за код, пока не разбирался, пытаюсь решить вопрос глобально, если будут КОНКРЕТНЫЕ вопросы, можно по мылу?
29 окт 02, 06:39    [69733]     Ответить | Цитировать Сообщить модератору
 Re: проект - регистрация служебных документов  [new]
NX
Member

Откуда:
Сообщений: 102
2 mers : Можно, помогу, чем смогу.
29 окт 02, 11:32    [69841]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить