|
|
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
Вообщем нужно данные из документа .xls перетащить каким-то образом в DW для дальнейшего сохранения в базе.. Подскажите куда копать функция ImportFile с файлами .xls не работает какие ещё функции или DW можно для этого использовать ?? Заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2008, 12:34 |
|
||
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
Файлы Excel могут быть источниками данных ODBC, на форуме уже обсуждалось... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2008, 12:39 |
|
||
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
Локшин МаркФайлы Excel могут быть источниками данных ODBC, на форуме уже обсуждалось... Test connection не проходит в ODBC,пишет ошибку cannot open workbook,Ole error code(80) :D:\reestr.xls ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2008, 12:59 |
|
||
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
Andr___! Локшин МаркФайлы Excel могут быть источниками данных ODBC, на форуме уже обсуждалось... Test connection не проходит в ODBC,пишет ошибку cannot open workbook,Ole error code(80) :D:\reestr.xls Значит наверное какие-то проблемы с драйвером ODBC? Можно сохранить файл Excel например как dbf и пытаться уже работать с ним. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2008, 13:27 |
|
||
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
Andr___!Test connection не проходит в ODBC,пишет ошибку cannot open workbook,Ole error code(80) :D:\reestr.xls может файл одновременно в Excel открыт? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2008, 13:44 |
|
||
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
нет не открыт.. Ну я вообще правильно делаю?? 1.в одбс добавляю новый пользовательский DNS 2.Выбираю драйвер PB DATADIRECT OEM 4.10 ExcelWorkbook (*.xls) 3.Прописываю в DataSoursName например reestr,Description можно в пр-пе неуказывать а в поле DatabaseWorkbook как я понимаю надо указать путь к файлу Экселя (например D:\reestr.xls) 4.На вкладке advensed нажимаю Translate и указываю OEM to ANSI 5.Применить,ОК! Кликаю на созданом DSN,он открывается,кликаю Test Connection---ОШИБКА???? Или надо как-то по другому???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2008, 14:25 |
|
||
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
если у тебя установлен ексель, то должен быть родной екселевский драйвер и настроенный DSN (типа "Exel Files") пробуй через него. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2008, 14:43 |
|
||
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
там нельзя сделать тест connection ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2008, 18:09 |
|
||
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
ну так тестируй через PB или тот-же Ексель! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2008, 21:28 |
|
||
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
А через ole dw заполнить? Гораздо стабильней ----------------------------------------------------------------------------- Главная деталь любой машины - голова ее владельца ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.03.2008, 09:46 |
|
||
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
А в PB предусмотрена такая возможность,чтобы в OLE-объект можно было загружать нажный мне файл(лис Эксцеля) или в нём может храниться только то на основе чего создан объект???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2008, 10:07 |
|
||
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
Формат документа (в Екселе) постоянный, т.е. положение данных в полях неизменно, то можно попробовать коннектиться череэ ОЛЕ. Вот кусок работающего кода: OLEObject lole_Excel OLEObject lole_Workbook OLEObject lole_Worksheet; String ls_WorkbookName // загружаем Excel и открываем XLS-файл lole_Excel = create OLEObject SetNull(ls_WorkbookName) li_retVal=lole_Excel.ConnectToNewObject("Excel.Application") if li_retVal <> 0 then MessageBox("Ошибка", 'Невозможно загрузить приложение "Excel"!', StopSign!, OK! ) return False End If lole_Workbook = lole_Excel.Application.Workbooks.Open(this.is_excel_file) if not IsValid(lole_Workbook) then MessageBox("Ошибка", 'Невозможно открыть Excel Workbook по имени файла "' + this.is_excel_file + '"!', StopSign!, OK! ) destroy lole_Workbook return False end if ls_WorkbookName=lole_Workbook.Name lole_Worksheet=create OLEObject lole_Worksheet=lole_Excel.Application.Workbooks(ls_WorkbookName).Worksheets(WORKSHEET_NUM) if wf_get_row_range ( lole_Worksheet, ll_begRow, ll_endRow ) = false then ... .... //-- ищем первую строку ll_begRow = 0 ll_endRow = 0 FOR ll_Row = 1 TO 20 ls_tmp = String(lole_Worksheet.Cells(ll_Row, ii_col_contract).Value) IF (Not IsNull(ls_tmp)) and ls_tmp <> '' THEN IF Match( ls_tmp, "№") THEN ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2008, 10:21 |
|
||
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
Это надо прописать на событие Click для OLE DW что ли????Или куда ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2008, 10:30 |
|
||
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
С OLE DW этот код вообще никак не сязан. Есть окно со стандартной возможностью выбрать файл Экселя из списка. После выбора файла вызывается функция его обработки , часть кода которой и приведена выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2008, 10:57 |
|
||
|
Импорт данных из Excel в DW
|
|||
|---|---|---|---|
|
#18+
Попробуйте импортировать через буфер обмена 1) Делаем datawindow - буфер 2) готовим для него windows руками (маркировать - взять в буфер) или автоматом через OLE Здесь надо учесть мелкие заморочки типа формата (пробелы убрать ) и тп 3) вставляем в dw 4) Делаем все что надо Если надо много и быстро то сохраняем DW в базу и далее sql --------------------------- Для универсальности и наглядности я обычно делаю так: 1) открываю пустое DW - пользователь видит структуру принимаемых данных и сам готовит буфер в EXcel 2) Вставляет 3) Выполняет импорт ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2008, 19:02 |
|
||
|
|

start [/forum/topic.php?fid=15&msg=35186518&tid=1336730]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
60ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 12ms |
| total: | 159ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...