Планировщик v1.1.05 — оригинальная обработка для автоматизации выполнения задач по расписанию




Принцип обмена данными из 1С с сайтом (на MySQL) и выдачи (публикации) этих данных по запросу.
PHP-Скрипт автоматической загрузки данных из файла данных в формате CSV в базу данных сайта работающего на WordPress.

В продолжение моей темы: 1С:Альфа-Авто Автосалон Автосервис: обмен с сайтом.
С помощью данного скрипта можно загружать в автоматическом режиме, по расписанию, данные сервисных книжек (ремонтов авто) из 1С:Альфа-Авто Автосалон Автосервис.
Также можно загружать данные в ручном режиме: для этого делается скрытая страница, где размещается специальная кнопка.
Комментарии размещенные внутри скрипта разъяснят логику и порядок действия.
Комментарии с "/////    echo" использовались для отладки.
Дополнительно создана таблица для журналирования результатов загрузки данных.
Скрипт включает в себя защиту от SQL инъекций (думаю безопасность соблюдена в полной мере).
В кратце:
1. Пишется скрипт, который запускает этот.
2. Создается регламентное задание в WordPress, по которому запускается скрипт из п.1. 
3. Этот скрипт осуществляет проверку на существование файла обмена в папке.
4. Если данные не новые, загрузка не производится.
5. Если данные новые, очищается таблица сервисных книжек.
6. Загружаются новые данные.

Собственно сам скрипт:

<?php // Полная загрузка сервисных книжек, создан 2026-01-05 12:44:55

global $wpdb2;
global $failure;
global $file_hist;

/////  echo '<H2><b>Старт загрузки</b></H2><br>';

$failure=FALSE;
//подключаемся к базе
$wpdb2 = include_once 'connection.php'; ; // подключаемся к MySQL
// если не удалось подключиться, и нужно оборвать PHP с сообщением об этой ошибке
if (!empty($wpdb2->error))
{
/////   echo '<H2><b>Ошибка подключения к БД, завершение.</b></H2><br>';
$failure=TRUE;
wp_die( $wpdb2->error );
}

$m_size_file=0;
$m_mtime_file=0;
$m_comment='';
/////проверка существования файлов выгрузки из 1С
////файл выгрузки сервисных книжек
$file_hist = ABSPATH.'/_1c_alfa_exchange/AA_hist.csv';
if (!file_exists($file_hist))
{
/////   echo '<H2><b>Файл обмена с сервисными книжками не существует.</b></H2><br>';
$m_comment='Файл обмена с сервисными книжками не существует';
$failure=TRUE;
}

/////инициируем таблицу лога
/////если не существует файла то возврат и ничего не делаем
if ($failure){
///включает защиту от SQL инъекций и данные можно передавать как есть, например: $_GET['foo']
/////   echo '<H2><b>Попытка вставить запись в лог таблицу</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>$m_mtime_file,'last_size_upload'=>$m_size_file,'comment'=>$m_comment));
wp_die();
/////    echo '<H2><b>Возврат в начало.</b></H2><br>';
return $failure;
}
/////проверка лога загрузки, что бы не загружать тоже самое
$masiv_data_file=stat($file_hist);   ////передаем в массив свойство файла
$m_size_file=$masiv_data_file[7];    ////получаем размер файла
$m_mtime_file=$masiv_data_file[9];   ////получаем дату модификации файла
////создаем запрос на получение последней удачной загрузки
////выбираем по штампу времени создания (редактирования) файла загрузки AA_hist.csv, $m_mtime_file

/////   echo '<H2><b>Размер файла: '.$m_size_file.'</b></H2><br>';
/////   echo '<H2><b>Штамп времени файла: '.$m_mtime_file.'</b></H2><br>';
/////   echo '<H2><b>Формирование запроса на выборку из лога</b></H2><br>';
////препарируем запрос
$text_zaprosa=$wpdb2->prepare("SELECT * FROM `vin_logs` WHERE `last_mtime_upload` = %s", $m_mtime_file);
$results=$wpdb2->get_results($text_zaprosa);

if ($results)
{   foreach ( $results as $r)
{
////если штамп времени и размер файла совпадают, возврат
if (($r->last_mtime_upload==$m_mtime_file) && ($r->last_size_upload==$m_size_file))
{////echo '<H2><b>Возврат в начало, т.к. найдена запись в логе.</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>$m_mtime_file,'last_size_upload'=>$m_size_file,'comment'=>'Загрузка отменена, новых данных нет, т.к. найдена запись в логе.'));
wp_die();
return $failure;
}
}
}
////если данные новые, пишем в лог запись о начале загрузки
/////echo '<H2><b>Попытка вставить запись о начале загрузки в лог таблицу</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>0, 'last_size_upload'=>$m_size_file, 'comment'=>'Начало загрузки'));

////очищаем таблицу
$clear_tbl_zap=$wpdb2->prepare("TRUNCATE TABLE %s", 'vin_history');
$clear_tbl_zap_repl=str_replace("'","`",$clear_tbl_zap);
$results=$wpdb2->query($clear_tbl_zap_repl);
/////   echo '<H2><b>Очистка таблицы сервисных книжек</b></H2><br>';
if (empty($results))
{
/////   echo '<H2><b>Ошибка очистки таблицы книжек, завершение.</b></H2><br>';
//// если очистка не удалась, возврат
$failure=TRUE;
wp_die();
return $failure;
}

////загружаем данные
$table='vin_history';         // Имя таблицы для импорта
//$file_hist Имя CSV файла, откуда берется информация     // (путь от корня web-сервера)
$delim=';';          // Разделитель полей в CSV файле
$enclosed='"';      // Кавычки для содержимого полей
$escaped='\

99 Comments

  1. Pari

    ??? Антивирь при закачке ругается на dialmail.dll !!!

    Reply ↓
  2. MrDen

    dialmail.dll поместить в список доверяемых вируса там нет!

    Reply ↓
  3. mashinist

    При запуске пишет «Ошибка загрузки картинок»

    Reply ↓
  4. MrDen

    9057.bmp должен находиться в каталоге обработке дата файла 22.06.2008 размер 5150 байт

    Reply ↓
  5. CheBurator

    при запуске обработки 1Сина валится намертво…

    Reply ↓
  6. CheBurator

    SystComm = СоздатьОбъект(«AddIn.SystComm»);

    Reply ↓
  7. CheBurator

    (6) не принимать во внимание, ошибся!

    валится на MainThread = СоздатьОбъект(«AddIn.Thread»)

    Reply ↓
  8. MrDen

    валится на 1cpp версий выше 2.3.0.7 именно из за потока других вариантов не обнаружил

    Reply ↓
  9. vip

    (0) Давно я такого бреда не видел.

    Когда увидел, для чего используется dynwrap.dll, охота смотреть дальше отпала.

    vtools и formex вместе не живут, а если живут, то очень недолго.

    Не обработка, а куча мусора какая-то.

    Reply ↓
  10. MrDen

    (9) ну ьред тоже прикольно 🙂

    Reply ↓
  11. vip

    (10) Ну, если использовать эту обработку как юллюстрацию клинического случая бреда, то пойдет.

    Кстати, о многопоточности.

    DialMail позволяет отправлять/получать почту в отдельном потоке, а ты эту возможность не используешь.

    И вообще не оставляет ощущение, что отдельные куски я где-то уже видел.

    Reply ↓
  12. MrDen

    (11) да я специально поточность не использовал кстати куски кода по отправке почты и получению из примеров DialMail

    другое нет

    Reply ↓
  13. vip

    (11) > да я специально поточность не использовал

    Почему? Это же основная фишка DialMail

    Reply ↓
  14. MrDen

    (11) dynwrap.dll привесил для переключения включения активного окна, рассылки административных сообщений,

    а вот работу с именованными каналами не получается организовать 1с не позволяет передавать данные с кодом символа 0

    Reply ↓
  15. MrDen

    (13) согласен 🙂 думаю позже сделаю идей много 🙂 лишь бы работе не мешало

    Reply ↓
  16. vip

    (14) 1. Активизировать окно это Окна::НаПереднийПлан, раз уж формекс используешь.

    2. Каких административных сообщений? Ты просто файл создаешь с проверкой удачного создания. Накуя здесь API?!

    (15) Что значит не мешало? Ты понимаешь, зачем добавлена такая возможность?

    Reply ↓
  17. MrDen

    (16) 1 в потоке не работает

    2 — понятно можно и нет сендом послать но хочется поинтереснее

    Reply ↓
  18. vip

    (17) В каком потоке? При чем тут это?

    Reply ↓
  19. MrDen

    (18) проверим 🙂

    Reply ↓
  20. vip

    И вообще не понятен смысл отдельного потока из vtools.

    Короче, нагородил семь верст до небес.

    Не понимаю великой сермяжной правды этой обработки.

    Reply ↓
  21. MrDen

    Все переписано с использованием ТабличногоПоля из 1cpp

    Reply ↓
  22. Romarius

    Как раз наметилась соответствующая задачка для планировщика. Буду тестисть. Спасибо!

    Reply ↓
  23. MrDen

    🙂 пожалуйста, с предложениями в личку

    Reply ↓
  24. w-divin

    в коментах ругають, а плюсикаф хватает )))

    Reply ↓
  25. MrDen

    (24) первый вариант был нестабильный на vtolls.dll с 1cpp.dll все намного симпатичнее

    Reply ↓
  26. CheBurator

    ууу хотел посмотреть как там с Тп работает — а там все закирпичено…

    Reply ↓
  27. MrDen

    не все закирпичено 🙂

    Reply ↓
  28. RikON

    Мегажесть, парень ты японец? я такого каламбура в модуле обработке ещё не видел, это ты по видимому специально так нарисовал… потом?

    Reply ↓
  29. RikON

    А понятно, жмот просто, пойду в другом месте поищу!

    Reply ↓
  30. MrDen

    Наверно ты о закирпиченном? Ну дык классы там полностью открыты

    Reply ↓
  31. urbanist

    Как он вызывается после установки?

    Reply ↓
  32. MrDen

    (31) запускать 1c_shed.ert

    Reply ↓
  33. urbanist

    (32) Спасибо,сам тормознул-забыл вытащить из архива 1c_shed.ert.

    1.Можно ли запускать в пакетном режиме?

    2.

    — запуск внешних отчетов (с параметрами, макроименами)

    Как передавать параметры в отчет-обработку?

    Reply ↓
  34. MrDen

    (33) 1 запустить можно, у меня правда работает постоянно

    2 параметры задаются с строке параметры при вызове внешнего отчета, в виде параметров могут использоваться макроимена и текстовые параметры

    Reply ↓
  35. urbanist

    При изменении свойств задачи и записи выдает:

    _edtпараметры = commessagetype.получитьзначение(commessagetype.текущаястрока())+ comsendtype.получитьзначение(comsendtype.текущаястрока());если (число(gдс2tзqюнэсrпiб7.task)=число(aюpbмтp1oи5вg9_p))

    {G:БазаEXTFORMS1C_SHED.ERT(352)}: Не задан вид.

    Только после удаления задачи и ввода новой всё нормально.

    Reply ↓
  36. MrDen

    (35) проверю, предложения по развитию в личку

    Reply ↓
  37. urbanist

    (36)

    Не работает задание получения файла с ФТП.При попытке нажать «Тест» выдает:

    ТпЗадача::FTPList(AddIn.FTP FTPConnection=, ТаблицаЗначений _MRDТаблФайловФТП=, Строка ФТППуть=/01/, Строка ФТПФильтр=*.*) : Слишком много параметров передано при вызове функции/процедуры объекта

    Если FTPConnection.Лист(,СокрЛП(ФТПФильтр))=1 Тогда

    {G:77ТоргЮвелирНазаровclass1c_shedТпЗадача.ert(1443) }

    если gдс2tзqюнэсrпiб7.количествострок()>0 тогда ко5beорcmuеnгckf.выводитьвокносообщений(1);текстрока = 0;если cbxвсезадания=0 тогда текстрока = ёosf7gtщvйеыисщм.текущаястрока;конецесли;ъr7h1хзлms2aбггн.тестироватьзадания(gдс2tзqюнэсrпiб7,текстрока);

    {G:77ТОРГЮВЕЛИРНАЗАРОВEXTFORMS1C_SHED.ERT(129)}: ТпЗадача::FTPList(AddIn.FTP FTPConnection=, ТаблицаЗначений _MRDТаблФайловФТП=, Строка ФТППуть=/01/, Строка ФТПФильтр=*.*) : Слишком много параметров передано при вызове функции/процедуры объекта

    Если FTPConnection.Лист(,СокрЛП(ФТПФильтр))=1 Тогда

    {G:77ТоргЮвелирНазаровclass1c_shedТпЗадача.ert(1443) }

    Предложение по развитию(контакт недоступен)-дать возможность поработать с кодом.

    Reply ↓
  38. MrDen

    (36) пришли на мыло при какой ситуации возникла ошибка

    Reply ↓
  39. MrDen

    (35) (37) исправлено ошибка возникала при отсутствии Справочника «Контрагенты»

    Reply ↓
  40. urbanist

    (39)

    О.К! Всё заработало.Спасибо!

    Reply ↓
  41. MrDen

    (40) пожалуйста!

    Reply ↓
  42. telec_1983

    Классная програмка! пока не ставил, но для автоматизации она мне очень нужна! спасибо производителю!!!! 😉

    Reply ↓
  43. MrDen

    (42) пожалуйста 🙂

    Reply ↓
  44. voler

    Программка хорошая, но я пока не ставил. Скажите а есть возможность такой на 1С 8.1?

    Reply ↓
  45. MrDen

    (44) Если хорошая тогда + можно рекомендовать 🙂

    А под 1С 8.1 попадалось здесь на сайте планировщик и наверняка есть встроенный инструмент, сам не пользуюсь 1С 8.1 ввиду отсутствия последней

    Reply ↓
  46. voler

    Мне система говорит, что я уже проголосовал.

    Reply ↓
  47. Nightuser

    Пишет: ошибка создания обьекта из компонеты ***/dialmail.dll (CLSID)

    Ошибка загрузки компоненты dialmail.dll

    Перепишите dialmail.dll в каталог обработки

    Reply ↓
  48. Nightuser

    Пишет: ошибка создания обьекта из компонеты ***/dialmail.dll (CLSID)

    Ошибка загрузки компоненты dialmail.dll

    Перепишите dialmail.dll в каталог обработки

    Запускал под Администратором

    Reply ↓
  49. MrDen

    (48) запускается нормально под администратором NT

    рекомендую проверить какая версия загружается

    1cpp.dll

    и на всякий случай права доступа NTFS

    Reply ↓
  50. Myti

    ❗ прикольная вещицо,,,,однозначно +

    Reply ↓
  51. dimazt

    проблема с отправкой почты через smtp. перепробовал разное но безрезультатно.

    Reply ↓
  52. MrDen

    (51) Проблем с отправкой замечено не было, пришлите скриншот на адрес разработчика, включите расширенные логи в соединении для определения причины и отправьте также лог файл

    Reply ↓
  53. Alucard

    Неплохо, автору однозначно +++

    Reply ↓
  54. Bor_ka

    (49) (48) Та же проблема. Версия 1с++ 3.2.2.0

    Права Администраторские (WinServer2003)

    Reply ↓
  55. MrDen

    (54) Очень интересно…

    Попробовал на виртуальной машине в чистом виде и ошибок нету.

    Хорошо бы в личку кусок лога 1c_shed.log

    Reply ↓
  56. MrDen

    (56) Написал о замене компонентов на более свежие и снова попробовать

    Reply ↓
  57. daytek0307

    Ещё б разработчик написал откуда он рекомендует скачивать и обновлять все dll..

    Reply ↓
  58. MrDen

    (58) добавлено с учетом пожеланий

    Reply ↓
  59. daytek0307

    как на счет dynwrapx.dll — сам длл не писал. у меня сервер на ОС Вин 2003 Сервер. Не будет ли дыр в безопасности с установкой на эту ОС?

    Reply ↓
  60. daytek0307

    и где лучше скачть оригинал dynwrapx.dll?

    Reply ↓
  61. MrDen

    (61) Библиотека dynwrapx.dll и вызов функций Win 32 API

    http://www.script-coding.info/dynwrapx.html описание тут

    Версия на сайте 1.0.0.0 от 05.09.2008 г.

    однако на форуме можно найти более поздние сборки например 1.0.0.7

    по поводу дыр безопасности их всегда много 🙂

    Кстати библиотеку dynwrapx.dll (работа с WinAPI (передача сообщений)) не обязательно устанавливать также как и rwidjets.dll

    Последняя только для отображения меню в главном меню 1С

    Reply ↓
  62. daytek0307

    запускаю отчёт без внешних длл. выдает ошибку :

    юмйвxcзeжjfмдц3т.установитьатрибут(форма, «кнЗадания»);ы3w53xйщёхvеcю7q = создатьобъект(«АтрибутФормы»);ы3w53xйщёхvеcю7q.установитьатрибут(форма, «кнПараметры»);хёбвчцжъуъчe3fvф = lzщnfktц3_8rqmrи.создатьэлементуправления(«ТпЛог»,»кнТаблицаЛог»);

    {F:1CBASAPTEKA EKSPERYMENTY1C_SHED.ERT(715)}: Недопустимое имя класса: ‘ТпЛог’.

    Reply ↓
  63. daytek0307

    проблема устранена — оновил свои длл для 1с… сори

    Reply ↓
  64. daytek0307

    инструкция для быстрого освоения не помешала б

    Reply ↓
  65. MrDen

    (65) вот тут косяк пока руки не дошли 🙂

    Reply ↓
  66. daytek0307

    Не создается письмо в выбраном каталоге. Вот алгоритм :

    Если ЗагрузитьВнешнююКомпоненту(КаталогИБ()+»DialMail.dll») = 1 Тогда

    Отправка=СоздатьОбъект(«AddIn.Smtp»);

    Иначе

    Предупреждение(«Не могу загрузить библиотеку, почта отправлятся не будет»);

    Возврат;

    КонецЕсли;

    ФайлПисьмо=»f:1c emp»;

    Отправка.РабочийКаталог = ФайлПисьмо;

    Отправка.СоздатьПисьмо(«s@mail.ru»,»d@mail.ru»,»v@mail.ru»,»от меня»,»предприятие», «отчет за», ФайлПисьмо);

    Отправка.Подключиться(«smtp.mail.ru»,»25″,» sssss»,»dddddd»,);

    Если Отправка.Подключиться(«smtp.mail.ru»)=1 тогда

    Где что не так?

    Reply ↓
  67. daytek0307

    База и письмо находится локально на компе, права администратора на запись.

    Reply ↓
  68. dimazt

    Опешите, пожалуйста, как работать с дополнительными параметрами при формирование внешних отчетов.

    Reply ↓
  69. MrDen

    (65) (69) Добавлено руководство пользователя, основные моменты в работе

    Reply ↓
  70. MrDen

    Прошу указать на ошибки и неточности, а также интересующие моменты в руководстве

    Reply ↓
  71. Xenom

    1с++ ведь с FormEx вместе не работают?((

    Reply ↓
  72. MrDen

    (72) да вроде нормально работают 🙂

    Reply ↓
  73. MrDen
    pavlo пишет:

    Адрес=ВыбратьКаталог(ТипЗадачи.ПолучитьЗначение(ТипЗадачи.ТекущаяСтрока())

    ругается в 1c_shed.ert тут как видите скобки не хватает

    Данная ошибка будет исправлена, нашел ее в задании «Прайс-лист» при выборе каталога сохранения

    Формирование прайс-листа не будет работать на других конфигурациях. И пункт выбора задания скорее всего уберу.

    Reply ↓
  74. MrDen
    pavlo пишет:

    Данная ошибка будет исправлена, нашел ее в задании «Прайс-лист» привыборе каталога сохранения

    Формирование прайс-листа не будет работать на других конфигурациях. И пункт выбора задания скорее всего уберу.

    Данная ошибка будет исправлена, нашел ее в задании «Прайс-лист» при выборе каталога сохранения

    Формирование прайс-листа не будет работать на других конфигурациях. И пункт выбора задания скорее всего уберу.

    Reply ↓
  75. tranzit2001

    Все сделано по инструкции, но при запуске обработки выдается сообщение

    юмйвxcзeжjfмдц3т.установитьатрибут(форма, «кнЗадания»);ы3w53xйщёхvеcю7q = создатьобъект(«АтрибутФормы»);ы3w53xйщёхvеcю7q.установитьатрибут(форма, «кнПараметры»);хёбвчцжъуъчe3fvф = lzщnfktц3_8rqmrи.создатьэлементуправления(«ТпЛог»,»кнТаблицаЛог»);

    {D:BASES1C_SHED1C_SHED.ERT(715)}: Недопустимое имя класса: ‘ТпЛог’.

    Окно обработки появляется, но в середине окна надпись «кнТаблица», в нижнем окне «кнТаблицаЛог»

    Reply ↓
  76. AlexBugs

    Зря мучаешься и все диалоговые формы делаешь слоями в 1-м окне, в 1-м внешнем отчете.

    Настройку и Соединения лучше вынести в другие отчеты, чтобы они были другими окнами.

    А то сложно понять такой интерфейс.

    Или же сделай реальные слои с закладками «Задачи», «Настройка», «Соединения», а не кнопки.

    И пожалуйста, не кодируй текст модуля. Он и так ложный, а ты еще и закодировал…

    Reply ↓
  77. Anton_Nikitin

    Ошибка загрузки картинок 9057.bmp

    Перепишите файл 9057.bmp в каталог обработки!

    Reply ↓
  78. MrDen

    (78) видимо не все файлы были извлечены из архива или отсутствует доступ к файлу

    Reply ↓
  79. MrDen

    (77) Специально не делал закладки ради экономии места и интерфейса, сделать закладки несложно

    соединения однозначно не стоит переносить

    если делать другие формы однозначно они будут модальными и доступа к предыдущим формам не будет

    А так вроде оригинально :-)…

    Reply ↓
  80. MrDen

    (76) 1 проверить версию 1cpp.dll

    2 проверить прописаны ли классы

    Reply ↓
  81. AndrejFAA

    Как-то давно скачал данную обработку и запустил у себя в работу. Понравилось. Есть проблемки, но не стал их исправлять в коде.

    Лень было разбираться в кодируемом тексте. 🙂

    Единственное, что добавил у себя — это возможность установки различных параметров для вызова обработок и отчетов. Добавлена ли эта возможность в новой версии 0.5?

    Reply ↓
  82. MrDen

    (82) AndrejFAA, Да это реализовано и весьма удобно. В следующей версии есть уже реализация с заполнением форм на экране и путем передачи данных в переменные внешней обработки, отчета или обработки в конфигурации

    Reply ↓
  83. AndrejFAA

    Так у себя сделал, когда скачал обработку.

    Можете у своей обработки показать как реализовали.

    Reply ↓
  84. MrDen

    (84) AndrejFAA, в этой весии работает только передача параметров, следующая версия в тестировании

    Reply ↓
  85. AndrejFAA

    Т.е. у Вас сейчас так же реализовано заполнение и передача параметров в отчёты, обработки?

    Reply ↓
  86. MrDen

    (86) AndrejFAA, в версии 0.5.00b реализована передача параметра в открываемый внешний отчет в виде Таблицы значений или Текстового параметра который на при открытии внешней обработки можно получить через Форма.Параметр пример дан в Руководстве Пользователя.

    Импорт полей в Задание планировщика и последующее заполнение полей на экране при вызове задания, запуск отчетов и обработок из конфигурации (в том числе) будет реализовано в версии 0.5.01

    Я постараюсь доделать и в скором времени выложить для работы.

    Форма будет заполняться параметрами, также можно будет программно нажимать кнопки :-).

    Reply ↓
  87. AndrejFAA

    (87) интересно реализовано. Если ещё будет возможность вставлять (а может уже и есть у Вас) параметры с типом «СписокЗначений» и «ТаблицаЗначений», то подожду новую версию и не буду у себя что-то дописывать. 🙂

    Reply ↓
  88. MrDen

    (88) AndrejFAA, Вот такая предварительная реализация. С константами, перечислениями, документами все понятно, все будет выбираться. Причем справочники и документы будут выбираться по типам либо с конкретными значениями.

    А вот что касается таблиц значений и списков значений, можно конечно вычитывать их из визуальной части или генерировать, с этим можно поэкспериментировать.

    Reply ↓
  89. AndrejFAA

    (89) может мне скинуть Вам, что было переделано два года назад?

    Reply ↓
  90. AndrejFAA

    Забыл добавить. У себя я сразу и сделал таблицы и списки, т.к. это нужно было в первую очередь. С заполнением тогда не стал заморачиваться. Просто сделал выгрузку нужных данных во временный файл, а в планировщике загружал. Теоретически сейчас можно переделать через буфер обмена.

    Reply ↓
  91. MrDen
    AndrejFAA пишет:

    (89) MrDen, может мне скинуть Вам, что было переделано два года назад?

    Давайте! на mr_den@mail.ru! Я тоже размышлял по поводу Таблиц значений и Списков значений. Надумал использовать предопределенные имена по принципу Макроимен.

    Reply ↓
  92. BurSer

    Скачал. Посмотрю. Отпишусь.

    Reply ↓
  93. MrDen

    (91) AndrejFAA, обновил, предлагаю потестировать. Жду файл добавлю списки и таблицы значений.

    Reply ↓
  94. AndrejFAA

    (94) отписался в почту.

    Reply ↓
  95. makeya

    По описанию замечательно, но посмотреть на обработку так и не получилось пока. 2 ссылки из 4х на внешние компоненты недоступны (одна выдает ошибку 404, другая просто редиректит на сайт). Даже 1cpp.dll которую положила в директорию обработки выдает ошибку «Перепишите файл 1cpp.dll в каталог обработки». Очень надеюсь, что заработает(

    Reply ↓
  96. MrDen

    (96) makeya, рекомедую вам все библиотеки скачать одним файлом lib.zip в разделе файлы

    Reply ↓
  97. makeya

    Спасибо за совет, сейчас попробую!

    Извиняюсь за вопрос, но у вас код обработки специально в таком чуть ли не обфусцированном виде, или у меня неверно открылось? Так хотелось научиться на вашем примере)

    Reply ↓
  98. Dolly_EV

    В задании «Добавить файлы в архив» в поле «Архив» пытаюсь написать:

    [КаталогИБ]ExtReportsИмперияАлкоДВФО_Чита_Элис_массив_[Шаблон{Формат(ТекущаяДата(),»ДММММ» [Шутливо] }].zip
    

    ругается: Формат(ТекущаяДата(),»»<<?>>ДММММ»» [Шутливо]

    Ожидается символ ‘)’

    Кавычки вокруг ДММММ пытался и двойные сделать и Симв(34) — ничего не помогает :-((

    Reply ↓
  99. MrDen

    (200) озадачился, посмотрю

    Reply ↓

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *