![]() |
Модераторы: stron |
![]() ![]() ![]() |
|
dionisiu |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 13.5.2006 Где: Крым Репутация: нет Всего: 2 |
Здравствуйте, уважаемые.
Прошу подсказать, как из Акцесса (или Экселя) на локальной машине по сети законнектиться к серверу 1С (на DBF-ах), запросить нужные данные и отключиться. Для подключения должны использоваться права гостя (есть) и пароль (можно хранить в коде программы, всё равно его все знают). Суть явления - мне для выполнения работы требуется подключаться к удалённому терминалу, формировать несколько разных отчётов, сохранять их в формате эксель и потом вручную заносить в акцес, причём время выполнения жестко лимитировано, а работы довольно много - хочу автоматизировать. Отчёт связан с движением товара на складе и выдаче определённой группы этого товара определённой группе клиентов (гостевой вход только это и позволяет - другие клиенты и товары не видны), однако требуется выборка по состоянию на разные даты. Есть возможность вытащить из 1С коды клиентов и товаров нужных групп, запрос желательно делать с учётом этих кодов, а не по названию (периодически меняется) Автоматизацию из Экселя в акцесс прошу не предлагать - наш конфигуратор выдаёт файлы с большим числом объединённых ячеек и в названия товара впихивает CHR$(13) - мы так и не нашли способа это обработать Доступа к конфигуратору на нашем филиале нет, в центральном офисе дополнительную обработку делать отказались. Если можно - пример кода на VBA (в других языках не программирую, к сожалению) |
|||
|
||||
77dpi |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 23.11.2006 Репутация: нет Всего: нет |
а если выгружать из 1С (внешней обработкой, конфигуратор не нужен)
http://www.sinor.ru:8100/~my1c/knowhow/accs_dao.html там же- внешнее соединение ОЛЕ http://www.sinor.ru:8100/~my1c/knowhow/v7&OLE.html Это сообщение отредактировал(а) 77dpi - 27.11.2006, 15:20 |
|||
|
||||
klen1 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 16.3.2006 Где: г. Ликино-Дулёво Репутация: нет Всего: нет |
Путь C:\1C_зарплата не должен содержать пробелов |
|||
|
||||
dionisiu |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 13.5.2006 Где: Крым Репутация: нет Всего: 2 |
77dpi, по первой ссылке - не понял. Это на каком языке программирования? то русские конструкции, то нормальный код... Вторая ссылка - тоже выдаёт смесь кодов.
Если это программирование в 1С - то мне это не доступно, нужен код ВБА. klen1, конструкция
создаёт объект где? в 1с или ВБА? |
|||
|
||||
77dpi |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 23.11.2006 Репутация: нет Всего: нет |
по первой ссылке - программирование внешней обработки в 1С - можно использовать и русский синтаксис и английский(можно оба вместе)
по второй - подключение из внешней программы, если она не поддерживает русский синтаксис, нужно писать на английском - как в примере klen1, о работе с оле-объектом 1с лучше почитать в книжке- описании встроенного языка 1с - там всего 5 страниц, во встроенном синтакс-помощнике 1с этого нет. Подключение по ОЛЕ писать в ВБА намного сложнее, чем в 1с, т.к. нужно использовать методы объектов в синтаксисе 1С, а некоторые конструкции редактор ВБА может и не пропустить. Это сообщение отредактировал(а) 77dpi - 27.11.2006, 17:55 |
|||
|
||||
dionisiu |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 13.5.2006 Где: Крым Репутация: нет Всего: 2 |
77dpi, а поподробнее можно - что это за внешняя обработка - из отдельной базы в том же 1С?
Прошу прощения, что вынужден напомнить - доступа к конфигуратору у меня нет, так что для меня это тёмный лес. Насчёт оле-объектов и книжки по ним - это в стандартной документации? или есть отдельные книги? |
|||
|
||||
Zero |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2169 Регистрация: 23.10.2004 Где: Россия, г. Рязань Репутация: 15 Всего: 24 |
Адназначна не в 1С, в 1С77 перед именем идентификатора, не какие опции типа "Set" не ставятся, особенно через пробел.
В стандартной документации это есть, но там мало, советую искать дополнительную инфу в и-нете. Ща по ней уже куча всего есть. Вообще я бы советовал в баню этот аксес и эксел, ставь на своей машине тоже 1С, и не каких проблем не будет. А раз с принципами програмирования знаком, изучай язык 1С (он не сложный) и будешь на ней всё делать. |
||||
|
|||||
77dpi |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 23.11.2006 Репутация: нет Всего: нет |
dionisiu, если ты выбираеш у них данные с помощью какой-то обработки(отчета) нужно попросить их сохранить его в виде внешней обработки(файл с расширением ert)- тут им ничего программировать не надо.
Заберешь его и допишеш сброс данных в аксес как в первом примере, правдв я такого никогда не делал. Внешний отчет можно запускать из 1с как обычно- через файл - открыть, конфигуратор не нужен. Как это все будет работать в терминале с подключением к твоей базе - хз. Забыл, внешн. отчет можно редактировать только в конфигураторе 1с, т е 1с должна быть установлена на компьютере. Это сообщение отредактировал(а) 77dpi - 28.11.2006, 12:05 |
|||
|
||||
dionisiu |
|
||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 13.5.2006 Где: Крым Репутация: нет Всего: 2 |
Zero, миллион извинений, но вынужден повториться - ДОСТУПА К КОНФИГУРАТОРУ НЕТ.
Также уточняю - данные нужно загнать в акцесс - это для обработки и пересылки в центральный офис. В БД производится обработка и графическое представление анализа движения продукции по категориям товаров, их видов и упаковок по разным категориям клиентов в разрезе сроков - весьма сложные графики получаются. Так что ограничиться установкой 1С на локальной машине не получится - это учётная система, а не аналитическая (так у неё в документации сказано). За пол-года с акцесом я уже разобрался и часть работы автоматизировал (напрограммировал довольно много кода). Делаю сопряжение нескольких БД акцеса и таблиц экселя. Но с 1С пока работаю на уровне съёма данных, и именно нужный мне отчёт (конфигуратор сторонней фирмы) выдаёт в экселе слишком сложную таблицу с кучей объединённых полей, которую я пока автоматизировать не могу. Так вот вопрос в чём - как мне сконструировать запрос к удалённой базе, подразумевая под удалённой базой именно группу таблиц 1С. Как я понимаю, в примере klen1 создаётся объект (ОЛЕ?), инициализируется конструкцией
где "/М" задаёт монопольный режим (или что это?) а конструкцией
этому объекту передаётся код 1С, так, что ли? |
||||
|
|||||
77dpi |
|
||||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 23.11.2006 Репутация: нет Всего: нет |
1с не допускает работы с базой напрямую. При иниц. ОЛЕ В примере с ВБА монопольный режим не выставлять.
к этому объекту можно применять методы 1С: например tovar.ВыбратьЭлементы() /не знаю англ. вариант/, но поскольку это пишется в ВБА, то редактор ВБА пропустит только то, что считает правильным, т.е. писать на ВБА, используя методы 1С - это труба. Легче написать внешний отчет в !С Это сообщение отредактировал(а) 77dpi - 28.11.2006, 13:05 |
||||
|
|||||
dionisiu |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 13.5.2006 Где: Крым Репутация: нет Всего: 2 |
77dpi, Я понимаю, что легче написать отдельный отчёт. Но я не понимаю, как, не имея доступа к конфигуратору ДЕЙСТВУЮЩЕЙ базы предприятия, сделать коннект из ОТДЕЛЬНОГО конфигуратора.
Ситуация следующая: есть дистрибьютор - оптовая фирма, осуществляющая продажу нескольких групп товара. Есть фирма - поставщик определённой группы товара. Есть клиенты дистрибьютора, покупающие отдельные товары разных групп из ассортимента дистрибьютора. Есть я - представитель фирмы-поставщика. У дистрибьютора установлена и работает 1С77. Это филиал, их офис (и программисты 1С) расположены в другом (довольно удалённом) городе. Мне организован гостевой вход в систему, ограничивающий меня выбором товаров из группы моей фирмы. Моя фирма требует от меня ежедневной отчётности в определённой форме в базе акцесс. Данные из 1С дистрибьютора мне нужно заносить в базу акцесс вручную. Как видно из схемы - мне отведена роль промежуточного звена между поставщиком и дистрибьютором, однако, дистрибьютор не будет подстраиваться под меня (изменять конфигурацию базы). Одновременно, моя фирма не хочет изменять форму отчётности таким образом, чтобы было удобно копировать данные вставкой. Мне же не хочется убивать свои руки при ручном переносе данных - вот я и ищу способ обратиться к таблицам напрямую (благо, способ существует), просто пока не знаю - как это сделать. Это сообщение отредактировал(а) dionisiu - 28.11.2006, 14:18 |
|||
|
||||
77dpi |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 23.11.2006 Репутация: нет Всего: нет |
но я же писал выше - для того, чтобы запустить свой внешний отчет из их 1с не нужны изменения в их конфигурации, он запускается через файл-открыть, и если ты используеш какой-то встроенный в их конфигурацию отчет - неужели им лень сохранить его как внешний отчет отдельным файлом и дать тебе его доработать - дописать выгрузку в аксес (на твоем компьютере для доработки нужно установить 1с) и потом вернуть доработанный файл им. Программисты его проверят,неужели они на это не согласятся? Правда я не понимаю как в этом внешнем отчете подключится к твоей базе.
Или может создать mdb у них, пускай заодно и контролируют данные
Это сообщение отредактировал(а) 77dpi - 28.11.2006, 15:10 |
|||
|
||||
77dpi |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 23.11.2006 Репутация: нет Всего: нет |
Не дочитал, что их программисты в другом городе. Хотя сохранить встроенный отчет как внешний может и более-менее вменяемый пользователь.
|
|||
|
||||
dionisiu |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 13.5.2006 Где: Крым Репутация: нет Всего: 2 |
77dpi, с теми программистами - гиблое дело. Вопрос такой: можно ли создать свою конфигурацию (открыть конфигуратор, сделать новую базу, форму...) и в режиме чтения с известным логином и паролем гостя войти в существующую базу?
Если это в принципе возможно, то буду изучать 1С, если нет - то придётся раскурочивать ... даже не знаю - что. |
|||
|
||||
77dpi |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 23.11.2006 Репутация: нет Всего: нет |
Из своей базы 1С естесно можно подключится по ОЛЕ к ихней базе, но к сожалению чтобы работать программно с их объектами нужно знать их конфигурацию - поиметь их файл *.md, который находится в каталоге базы их 1с
если сможешь его себе скопировать - можешь создать собственную пустую базу, идентичную по конфигурации их базе и потренироваться в программировании в 1с. Еще нашел нечто загадочное- доступ из аксеса к 1с: http://www.microsoft.ru/offext/details.aspx?id=59 посмотрел этот кошмар - оказалось для 1с 7.5, лучше все-таки писать в 1с. Это сообщение отредактировал(а) 77dpi - 28.11.2006, 18:06 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "1C: Предприятие, SAP, ERP и учётные системы" | |
|
Запрещается! 1. Обсуждение крэков, кейгенов и других подобных программ Пробуйте искать сами или обращайтесь в приват к участникам форума. Темы с подобными вещами будут немедленно удаляться, а нарушители - получать предупреждения. Также запрещается обсуждение проблем работы этих программ (что куда вписать, куда что скопировать и т.п...) 2. Давать ссылки на взломанные продукты
|
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | 1C: Предприятие, SAP, ERP и учётные системы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |