Перед згорткою ви пропустили створення документів для введення залишків по цим регістрам станом на 01.01.19. Потім вже потрібно було зробити згортку. Я робив для себе універсальний документ для введення залишків по всім регістрам, що мають залишки. При розробці використав цю статтю - лінк.
Також колись брали на вакансію 1С-програміста в 5-зірковий готель (Трускавець). В результаті хотіли загрузити ще і роботою сис.адміна при тій же з/п. Пішов звідти. Пізніше дізнався, що всі толкові іногородні ІТ-ніки забили на готель болт - також пробували загрузити іншою роботою.
От хочу скористатись обробкою Клонируем объекты в стороннюю базу 7.7 DBF у ОС Windows 7 x32. Все установив, що вказано у статті. Можливо хтось нею користувався і вже знає про цю помилку - при відкритті цієї обробки помилка:
Цитата
глОлеДБ = СоздатьОбъект("OLEDBData"); {D:\1\EXTFORMS\1.ERT(584)}: Неудачная попытка создания объекта (OLEDBData)
Зрозуміло, що проблема у "конекті" до Microsoft FoxPro драйвера. При інсталяції під адміном вказав, що потрібно встановити для всіх користувачів (про це вичитав у інеті). Що ще може бути? Ще викладу текст процедури у якій проходить "конект" до драйвера:
Рез = глОлеДБ.Соединение(Соединение); гЗапрос = глОлеДБ.СоздатьКоманду(); гЗапрос.Выполнить("EXECSCRIPT('SET ANSI OFF')"); // Устанавливаем время ожидания захвата таблиц , если во время выполнения запроса кто то проводит документы // Очень полезная функция - аналогична времени ожидания в 1С гЗапрос.Выполнить("EXECSCRIPT('SET REPROCESS TO 60 SECONDS')"); // Убираем буфепизацию, чтобы данные возвращаемые запросам всегда были актуальны гЗапрос.Выполнить("EXECSCRIPT('SET REFRESH TO 0,-1')");
попытка ЗагрузитьВнешнююКомпоненту("1cpp.dll"); Сообщить("Компонента 1С++ загружена!"); Исключение Сообщить("Пытались, но не загрузили компоненту 1С++ :("); КонецПопытки;
А так як реалізований підбір для прикладу в розх. накладній в типовій бухгатерії вас не влаштовує - стаємо на кнопку "Подбор" в документі і вибираємо номенклатуру?
1.2 Аби не вводити Акцизи зпочатку а використати останній документ на цій же формі є кнопка "Відрити останні набрані Акцизи" і провести його редагування знову при натисненні кнопки "Зберегти" записати його але вже з наступним індивідуальним номером
а якщо ввести деякий документ-шаблон і його надалі копіювати програмно і вносити нові дані / редагувати існуючі, так не підійде?
я би ще таку опцію розглянув - форму для відкриття нового документу ОткрытьФорму(<ОписательОбъекта>,<КонтекстФормы>,<ДокументОснование>)
Цитата
<КонтекстФормы> - имя переменной, куда можно задать значение любого типа для передачи в открываемую форму.
з останнього документу записати дані у зміну і аналізувати її при відкриті нового документу
Всё чаще встречаются задачи по отправке отчетов поставщику, и нередко подготовленные файлы необходимо записать на FTP сервер. О том, как можно решить подобную задачу, и пойдёт речь.
Способ первый – внешняя компонента На официальном сайте замечательной компании Агент ПЛЮС в разделе Скачать свободно доступны Конфигурации для 1С:Предприятие с интегрированным модулем обмена для "Агент Плюс: Мобильная торговля. Проф" среди которых Конфигурация "Агент Плюс. Торговля+Склад" (на базе типовой конфигурации "Торговля+Склад", редакция 9.2). В дистрибутиве конфигурации содержится внешняя компонента APPlus.dll и несколько дополнительных библиотек, дабы не мучать читателя подробностями – все они собраны в прикрепленном к статье архиве.
При помощи этой компоненты легко решается поставленная задача:
ЗагрузитьВнешнююКомпоненту("APPlus.dll"); // Регистрируем компоненту ФТП = СоздатьОбъект("AddIn.CeDataExch"); // Создаём объект ФТП.FtpOpenSession(); // Это я не знаю зачем:) Результат = ФТП.FtpConnect("ftp.filehost.ru","userName","Password"); // Подключаемся Если Результат = 0 Тогда // Если успешно то отправляем файл Результат = ФТП.FtpPutFile(ИмяФайлаЛокально, ИмяФайлаНаФТП); Если Результат <> 0 Тогда // не получилось - сообщаем об ошибке Сообщить("Не удалось отправить файл по причине: " + ФТП.ErrDescription(Результат), "!"); КонецЕсли; Иначе Сообщить("Не удалось подключиться по причине: " + ФТП.ErrDescription(Результат), "!"); КонецЕсли; ФТП.FtpCloseSession();
Преимущества: один из самых всеядных способов в плане серверов + контроль результата выполнения, легко организовать обработку исключительных ситуаций, так же сильны и методы чтения с фтп.
Недостатки: внешние компоненты в 7.7 требуют регистрации с правами администратора; относительно медленный способ.
По поводу правомерности использования компоненты мне официально ответили «Компонента APPlus.dll бесплатная, Вы можете использовать её в любых целях»
Способ второй – консольный
Заключается в использовании стандартной команды windows «ftp» с параметрами.
Решение может выглядеть так:
Текст = СоздатьОбъект("Текст"); // Создаём файл с командами для ftp Текст.ДобавитьСтроку("open " + ФТПсервер); Текст.ДобавитьСтроку(ФТПимяПользователя); Текст.ДобавитьСтроку(ФТПпароль); Текст.ДобавитьСтроку("put " + ИмяФайлаЛокально); Текст.ДобавитьСтроку("quit"); Текст.Записать(КаталогИБ() + "ftpcmd.dat"); ФС.УстТекКаталог(КаталогИБ()); // место расположения ftpcmd.dat КомандаСистемы("ftp -s:ftpcmd.dat"); // вызываем ФС.УдалитьФайл(КаталогИБ() + "ftpcmd.dat"); // убираем за собой
Преимущества: никаких компонент, всё стандартное и понятное.
Недостатки: работает не всегда и не везде – капризный к серверам, для результата выполнения требуется анализ выводимых сообщений, можно сделать так.
"ftp -s:ftpcmd.dat > naprimer.log"
После выполнения команды файл naprimer.log считывается программно и анализируется.
Способ третий – пассивный режим
История возникновения этого способа связана с тем, что первые два не имеют возможности перехода в пассивный режим обмена (как Web-браузер) и в некоторых случаях из-за этого не работают. Связано ли это с настройками фтп-серверов или политикой безопасности компьютера-клиента и его сети, лично для меня как необременённого сетевыми знаниями специалиста, загадка, а искать ответ или специалиста который бы помог в каждом новом случае – смерти подобно. Поэтому силами яндекса было найдено решение – использовать свободно доступную консольную программу «curl.exe» следующим образом:
ФС.УстТекКаталог(КаталогИБ()); // место расположения curl.exe и её компонент КомандаСистемы("curl.exe -T """+ИмяФайлаЛокально+""" -u "+ФТПимяПользователя+":"+ФТПпароль+" "+ФТПсервер); // вот и всё
Достоинства: пассивный режим, относительно быстрый, достаточно лояльный к серверам.
Недостаток: нет возможности программно определить результат отправки.
В прилагаемом архиве содержится конфигурации со всеми описанными способами и примененными компонентами, что позволяет, указав параметры своего сервера, быстро определиться с подходящим решением.
О том как можно организовать регулярную автоматическую отправку отчетов можно узнать здесь.
Конечно же, есть и множество других способов решить поставленную в заголовке задачу, однако мне вполне хватает вышеизложенных. Все три способа на момент публикации реально используются, поэтому делюсь, чтобы другим помогло и самому не забыть.
Прошу разрешить использование 1с на Украине. Аргументы: - Свободная конкуренция - Закончил курсы 1с бухалтер - Закончил курсы 1с программист - Не заслуживаю, чтобы против меня были применены санкции
Знаю історію одного "крупного" клієнта. В нього вірус зашифрував всі дані на сервері, в т.ч. архіви. Він заплатив вказану суму здирнику в у.е. Здирник всі дані розшифрував - "чесним" виявився
при переході по вищевказаних посиланнях - помилка:
Цитата
Сообщение форума Обнаружена ошибка. Если вам неизвестны причины ошибки, попробуйте обратиться к разделам помощи.
Цитата
Причина: Некоторые требуемые файлы отсутствуют. Если вы хотели просмотреть тему, возможно эта тема перемещена или удалена. Вернитесь назад и попробуйте снова.
Регламентированный отчет ESVdod4.ert ("Отчет в пенсионный фонд (ЕСВ)") с выгрузкой в dbf - J30T405.dbf (для таблиці 5 додатку 4), - J30T406.dbf (для таблиці 6 додатку 4), - J30T407.dbf (для таблиці 7 додатку 4),
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!