0 / 0 / 0
Регистрация: 11.09.2009
Сообщений: 313
1

Import From Excel To Lotus

11.05.2010, 17:26. Показов 50161. Ответов 31
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Народ пытаюсь вытянуть некоторые данные из Excel в Лотус.Подключаюсь с помощью ODBC драйвера,в панель управления->администрирование ->Источники данных (ODBC) ->Пользовательский DSN добавляю настройки Microsoft Excel Driver(.xls).Пытаюсь приконектится:

LotusScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Dim con As New ODBCConnection
Dim qry As New ODBCQuery
Dim result As New ODBCResultSet
Dim Session As New NotesSession
Dim Db As NotesDatabase
Dim COView As NotesView
Dim CODoc As NotesDocument
Dim BillDirectionDoc As NotesDocument
Dim Row As Integer
Dim BillDirection As String
 
 
Set Db = Session.CurrentDatabase
Set COView = Db.GetView(    "BillDirections:DirCode" )
 
Set qry.Connection = con
Set result.Query = qry
con.ConnectTo( "STAT2" )
qry.SQL = "SELECT * FROM STAT2"
result.Execute
 
Do
result.NextRow
Row = Row + 1
.............................................
result.Execute вылетает ошибка:

Может кто-то знает как правильно настроить драйвер?Заранее благодарен
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.05.2010, 17:26
Ответы с готовыми решениями:

Lotus и Excel
Расклад следующий: в лотусе сделал агент по экспорту данных в Excel. (результат - несколько...

Lotus + Excel
Гуру, добрый день. Пытаюсь найти решение вопроса на форму - не получается. Хочу определить,...

Lotus & Excel
Всем привет! Постановка задачи: юзер, инициирует запрос к ораклу, после откривается ексель и...

Lotus And Excel
Здравствуйте, Нашел список какие поддерживаются версии лотуса саппортом. А вот нужно узнать...

31
0 / 0 / 0
Регистрация: 28.05.2005
Сообщений: 347
11.05.2010, 18:04 2
Я мучился с ODBC - плюнул. Ну не работает, хоть тресни.
Все через COM делаю. Дешево и сердито.
Еще через DB2 можно.
0
0 / 0 / 0
Регистрация: 04.11.2007
Сообщений: 3,019
11.05.2010, 18:40 3
из екселя в лотус это не кошерно
сначала из екселя преобразовать в XML а уже потому DXML отработать на раз
обещаю что скорость минимум в 100 раз будет больше
0
0 / 0 / 0
Регистрация: 11.09.2009
Сообщений: 313
12.05.2010, 09:10 4
ToxaRat
Тут скорость не нужна так как это единоразовый импорт,особо извращатся неохота
0
0 / 0 / 0
Регистрация: 18.08.2008
Сообщений: 1,698
12.05.2010, 10:15 5
xRomax
Я тоже пытался вытянуть с ODBC... не понравилось и сделал так

LotusScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Function ConnectToXLS As Variant
Dim ProfileDoc As NotesDocument
Dim ADOConnection As Variant
 
 
On Error GoTo OnErr
 
Set ProfileDoc = GetProfileDocument
If ProfileDoc Is Nothyng Then
ConnectToXLS = "1"
Exit Function
End If
 
Set ADOConnection = CreateObject("ADODB.Connection")
 
With ADOConnection
.Provyder = "Microsoft.Jet.OLEDB.4.0"
.ConnectionString = "Data Source="+ ProfileDoc.ExcelDebet( 0 ) + ";Extended Properties=Excel 8.0;"
.Mode = 1
.Open
End With
 
Set ConnectToXLS = ADOConnection
 
Exit Function
 
OnErr:
Print Error
Set ConnectToXLS = Nothyng
Set ADOConnection = Nothyng
Resume Rez
 
Rez:
 
End Function
и так

LotusScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    Set XLSConnection = ConnectToXLS
 
If XLSConnection Is Nothyng Then
GoTo OnErr
End If
 
Set RecordSet = CreateObject("ADODB.Recordset")
RecordSet.LockType = 3
RecordSet.CursorType = 2
RecordSet.Open "Select * from [Sheet1$] where F2 <>  " , XLSConnection
 
While RecordSet.EOF = False
..... делаем то что надо
Wend
и настраивать ничего не надо
0
0 / 0 / 0
Регистрация: 11.09.2009
Сообщений: 313
12.05.2010, 11:36 6
NickProstoNick
"Microsoft JET Database Engine:обьект "STAT2" не найден ядром базы данных Microsoft Jet. Проверьте существование обьекта и правильность имени и пути"
Вылетает ошибка на строке выборки

LotusScript
1
    RecordSet.Open "Select * from STAT2 " , XLSConnection
Функция коннекта проходит нормально,получаю обжекты
0
0 / 0 / 0
Регистрация: 18.08.2008
Сообщений: 1,698
12.05.2010, 11:47 7
STAT2 - это страница в xls-файле?
И вообще, покажи сам файл.
А вообще, попробуй написать [Sheet1$] или какая у тебя там страница
0
0 / 0 / 0
Регистрация: 11.09.2009
Сообщений: 313
12.05.2010, 11:52 8
NickProstoNick


STAT2 - это страница в xls-файле?
И вообще, покажи сам файл
Да,страница,файл также называется.Файл не могу показать так как это телефонный справочник компании
0
0 / 0 / 0
Регистрация: 28.06.2009
Сообщений: 1,567
12.05.2010, 11:53 9
Цитата Сообщение от xRomax
так как это телефонный справочник компании
коллеги, разовый экспорт из экселя в таком простом случае - просто импортнуть какой такой код??? в крайнем случае, сделать форму+вьюху и тупо импортнуть... плюс там есть такие .COL файлы - параметризируют импорт...
0
0 / 0 / 0
Регистрация: 11.09.2009
Сообщений: 313
12.05.2010, 11:57 10
Klido
А можно конкретнее,так как етого не делал раньше?
0
0 / 0 / 0
Регистрация: 28.06.2009
Сообщений: 1,567
12.05.2010, 12:03 11
File-Import... ну и там далее... в хелпе про importing files - в клиентском и дизайнерском

насколько помню, если вьюха точно совпадает со столбцами экселя + форма нормальная - в 3 клика делается прекрасно импорт...
0
0 / 0 / 0
Регистрация: 11.09.2009
Сообщений: 313
12.05.2010, 12:37 12
NickProstoNick
Я правильно понял что ProfileDoc.ExcelDebet( 0 ) - поле с путем к файлу?
0
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
12.05.2010, 12:43 13
Klido
поддерживаю

из-за одного раза устраивать такой гимор... - этож надо так себя не уважать
КОМ, ОДБЦ... - кто больше вспомнит МСпердуляторов усложняющих жисть? ;)

делаем CSV файл (экспорт из хехеля), переименовываем его в txt, составляем col файл (примеры в хэлпе нотусей)
импортим в нотуса (да хоть кодом) - стандартный пункт меню и соответ. собака
col файл для задания типа полей и разделителей
0
0 / 0 / 0
Регистрация: 28.06.2009
Сообщений: 1,567
12.05.2010, 12:45 14
lmike
ну я обычно ограничиваюсь вьюхой и формой - при импорте там сразу спрашивает что да как... вооще не вопрос - даже если что не так, то ctrl+a Del, поправил формовьюшку - и повтор... куда как быстрее код писать....
0
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
12.05.2010, 12:50 15
Цитата Сообщение от Klido
ну я обычно ограничиваюсь вьюхой и формой - при импорте
у мя в кажной базе есть вьюшка ($All) - столбецы дата создания, модификации, форма, с возможностью сортировки
col файл позволяет отлавливать несоответ. типов и кол-ва данных (колонок)
0
0 / 0 / 0
Регистрация: 11.09.2009
Сообщений: 313
12.05.2010, 14:18 16
Klido
Есть вьюха есть форма с полями,нажимаю импорт выбираю файл,выбираю форму нажимаю ок , результат: создается один пустой документ
0
0 / 0 / 0
Регистрация: 28.06.2009
Сообщений: 1,567
12.05.2010, 14:26 17
xRomax
ды кглянь в хелпе формат - в экселе должны столбцы называться как поля в форме.. ну и там галочками ещё потыцкать... при импорте
0
0 / 0 / 0
Регистрация: 28.05.2005
Сообщений: 347
12.05.2010, 16:37 18
Господа! Штож товорицца то. Надо человеку помочь решить разовую задачу. Все начали пальцы загибать.
В хелп тыкать. XML? DXL? И прочее. А нахрена спрашивается?



LotusScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
Sub ImportFromExcel
 
Dim session As New NotesSession
Dim ws As New NotesUIWorkspace
 
Set db = Session.currentdatabase
 
filename = Inputbox$ ("Drive\Path\FileName.xls for the docs будут загружены.", "Укажите расположение файла импорта " ,"c:\export.xls")
If filename = "" Then
Exit Sub
End If
 
formname = Inputbox$ ("Форма для загрузки?", "Enter ... " ,"Topic")
If formname = "" Then
Exit Sub
End If
 
Set xlApp = CreateObject("Excel.application")
Set ws = New NotesUIWorkspace
Установка видимости Excel -------------------------------------------------
Watch = "No"
If Watch = "Yes" Then YesNo = True Else YesNo = False
xlApp.Visible = YesNo
открытие книги ------------------------------------------------------------
 
Call xlApp.Workbooks.Open(filename, 0, True)
Set xlsheet = xlApp.Workbooks(1).Worksheets(1)
xlsheet.Activate
 
Dim RowName As String
With xlsheet
i=1  начинаем со второй строчки
Do
RowName = Trim(Str(i + 1))
---------------------------------------------------------
создать
Set CurrDoc = New NotesDocument (db)
CurrDoc.Form=formname
CurrDoc.Category3=.Range("A" & RowName).Value
CurrDoc.Category2=.Range("B" & RowName).Value
CurrDoc.CatalogNumber=.Range("C" & RowName).Value   Артикул
Call CurrDoc.ComputeWithForm(True, True)
Call CurrDoc.Save(True, True)
---------------------------------------------------------
Print i
i = i +1
Loop While (Trim(.Range("A" + RowName).Value)<>"")  пока колонка "A" Category непустое :)
End With
 
xlapp.activeworkbook.close
xlapp.quit
Set xlapp = Nothyng
 
Messagebox("Import file Excel " & FileName & " is complete. Всего создано " & i & " записей. ")
Call ws.ViewRefresh
 
End Sub
By кто-то: "Мне не нужен совершенный код, мне нужен код который решает задачу..."
0
0 / 0 / 0
Регистрация: 18.08.2008
Сообщений: 1,698
12.05.2010, 16:39 19
Цитата Сообщение от xRomax
NickProstoNick
Я правильно понял что ProfileDoc.ExcelDebet( 0 ) - поле с путем к файлу?
Да, путь к файлу!
0
0 / 0 / 0
Регистрация: 28.06.2009
Сообщений: 1,567
12.05.2010, 17:09 20
NetWood


Цитата Сообщение от NetWood
Надо человеку помочь решить разовую задачу
Это из серии помочь человеку не задачку разовую решить, а получить экспириенс в области взаимодействия лотус-эксель
0
12.05.2010, 17:09
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.05.2010, 17:09
Помогаю со студенческими работами здесь

Поиск Из Lotus В Excel
Добрый день! Для более оперативной организации импорта данных из книги Excel в БД Lotus решил...

Evaluate Excel В Lotus
В макросах EXCEL Result =Sheets(2).Evaluate(&quot;SUM(F10:F14)&quot;) отрабатывает нормально и возвращает...

Импорт из Excel в Lotus
Подскажите плз… Наши юрики решили вести свой реестр дел в Lotus, раньше они делали это в Excel....

Экспорт данных из Excel в Lotus
Доброе время суток! Подскажите каким способом можно эекспортировать даные из Excel в Lotus???


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

Новые блоги и статьи
Интеграция Arduino и ChatGPT: Практическое руководство
InfoMaster 16.01.2025
В современную эпоху технологических инноваций интеграция искусственного интеллекта с микроконтроллерами открывает принципиально новые возможности для создания умных устройств и автоматизированных. . .
Как создать робота, управляемого ChatGPT
InfoMaster 16.01.2025
Концепция проекта В современную эпоху искусственный интеллект и робототехника становятся все более доступными для энтузиастов и разработчиков. Создание роботизированной руки, управляемой ChatGPT,. . .
Как создать ChatGPT бота в Telegram на Python
InfoMaster 16.01.2025
В современном мире технологии искусственного интеллекта становятся все более доступными для разработчиков, открывая новые возможности для создания умных и интерактивных приложений. Одним из самых. . .
Машинное обучение с помощью Python
InfoMaster 16.01.2025
Машинное обучение стало неотъемлемой частью современных технологий, позволяя компьютерам учиться на основе данных и принимать решения без явного программирования. В сочетании с языком. . .
Использование связки C# и PHP в корпоративной разработке и микросервисной архитектуре
InfoMaster 16.01.2025
Введение в интеграцию C# и PHP В современной корпоративной разработке все чаще возникает потребность в создании гибких и масштабируемых решений, способных эффективно решать широкий спектр. . .
Как использовать Kerio дома для управления сетью и пользователями
InfoMaster 16.01.2025
Использование технологий для улучшения повседневной жизни стало неотъемлемой частью современного быта. Одной из таких технологий является Kerio — мощный инструмент для управления сетью и. . .
Есть ли будущее у DVD и Blu-ray?
InfoMaster 16.01.2025
В эпоху стремительного развития цифровых технологий и повсеместного распространения потоковых сервисов вопрос о будущем физических носителей информации становится все более актуальным. Особенно остро. . .
Как проводить научные вычисления на Python
InfoMaster 15.01.2025
Python стал одним из наиболее востребованных языков программирования в области научных вычислений благодаря своей простоте, гибкости и обширной экосистеме специализированных библиотек. Научные. . .
Создание игры типа Minecraft на PyGame/Python: пошаговое руководство
InfoMaster 15.01.2025
В данном руководстве мы рассмотрим процесс создания игры в стиле Minecraft с использованием библиотеки PyGame на языке программирования Python. Этот проект идеально подходит как для начинающих. . .
Как создать свою первую игру в стиле Doom на Unreal Engine
InfoMaster 15.01.2025
Разработка шутера от первого лица в стиле классического Doom представляет собой увлекательное путешествие в мир игрового программирования, где сочетаются творческий подход и технические навыки. . . .
Параллельное программировани­е: основные технологии и принципы
InfoMaster 15.01.2025
Введение в параллельное программирование Параллельное программирование представляет собой фундаментальный подход к разработке программного обеспечения, который позволяет одновременно выполнять. . .
Как написать микросервис на C# с Kafka, MediatR, Redis и GitLab CI/CD
InfoMaster 15.01.2025
В современной разработке программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот подход позволяет разделить сложную систему. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru