Импорт из EXCEL и других источников (xls, xlsx, xlsb, ods, sxc, dbf, mxl, csv, clipboard, sql) в 1С




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

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

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

<?php // Полная загрузка сервисных книжек, создан 2024-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. Saint

    Я так понимаю, что метод «Microsoft ADO» в клиент-серверном варианте на архитектуре x64 традиционно работать не будет?

    Reply
  2. StepByStep

    (1) Saint,


    Я так понимаю, что метод «Microsoft ADO» в клиент-серверном варианте на архитектуре x64 традиционно работать не будет?

    Тестовая среда, в которой производилось тестирование 32-битная.

    Поэтому ответить на Ваш вопрос не представляется возможным.

    Если Вы проверите и «метод «Microsoft ADO» в клиент-серверном варианте на архитектуре x64 традиционно работать не будет», не сочтите за труд, напишите комментарий, я подправлю описание обработки в разделе «Ограничения».

    Спасибо.

    Reply
  3. SergioVB

    Экспорт в Эксель реализуется аналогично?

    Reply
  4. daho

    Неплохо для обучения

    Reply
  5. daho

    Скорее всего по барабану.. главное чтобы драйвер был подходящий…а вообще могут быть глюки из-за х64 архитектуры

    Reply
  6. StepByStep

    (3) SergioVB,

    Экспорт не предусмотрен.

    Reply
  7. StepByStep

    (4) daho,

    В том числе.

    Reply
  8. StepByStep

    Версия «Импорт из Excel в «Розница 2.0»» v.2.0

    Существенное изменение обработки:

    — Добавлены документы: «Оприходование товаров», «Установка себестоимости».

    — Изменен состав, последовательность Алгоритмов поиска. Исключены неэффективные.

    — Добавлена возможность отключать неиспользуемые Алгоритмы поиска. Оптимизация поиска. «Время — деньги».

    Если отключены все Алгоритмы поиска, то поиск не производится, предполагается, что вся Номенклатура — новая.

    Полезно для первичного внесения номенклатуры, например при Оприходовании номенклатуры.

    — Особое внимание уделено Штрихкоду, если в параметрах информационной базы установлено «Использовать уникальные Штрихкоды». Не допустить появление двойных штрихкодов.

    — Параметры по назначению и значимости теперь располагаются на разных вкладках страницы «Параметры». Форма обработки стала комфортнее. И на экране она стала компактнее.

    — Изменены некоторые правила формирования колонок промежуточной таблицы «1С:Предприятие». Обязательными в файле типа Excel теперь остались только Наименование и ЦенаЗакупа.

    — Если нет количества в файле, то приходные документы не формируются: «Поступлене товаров», «Оприходование товаров», а также не формируется «Установка себестоимости», НО формируется «Установка цен номенклатуры».

    — Расширена система подсказок действий и предупреждений. «Защита от дурака».

    — Справка обработки содержит подробное описание.

    Reply
  9. agenttsmit

    Проблема в ут 11 Возможно, обработка (отчет) устарела или не является дополнительной:Метод объекта не обнаружен (СведенияОВнешнейОбработке)

    Reply
  10. StepByStep

    (9) agenttsmit,

    На данный момент «Импорт из Excel» v.2.1. реализован для «Розница 2.0» — см. страницу публикации.

    УТ11 — следующее по плану.

    Reply
  11. zachs

    Спасибо, очень познавательно! Как раз понадобилось изучить загрузку данных из файлов.

    Reply
  12. mammon

    не открывается, в рознице

    Reply
  13. mammon

    у меня розница 1.0.15.1 Ювелирный магазин, вообще не открывается

    Reply
  14. StepByStep

    (15) mammon,

    со страницы публикации: «Импорт из Excel» v.3.0. «Розница 2.0».

    Reply
  15. petrovaUL

    минусы Exel-я: например код документа «000000001» в Exel-е отображается ка «1»! и самый БОЛЬШОЙ это ограничение по количеству Срок в документе.

    Reply
  16. ZLENKO

    В погоне за универсальностью у автора получился какой то монстр в котором даже разбираться лень…

    Мне ближе подход 1С в их обработке «загрузка данных из табличного документа» — универсальный механизм чтения данных и универсальных механизм поиска данных и плюс к этому обработчики событий загрузки. Пример ее использования можно посмотреть тут http://infostart.ru/public/19062/

    Reply
  17. ZLENKO

    (22) Ну во первых (как показывает практика :-() про обработку с дисков ИТС знают далеко не все. А вот по поводу множества ситуаций — не могу себе представить что бы такого нельзя было закачать с использованием обработчиков событий загрузки в этой обработке. Но конечно писать обработчики должен человек разбирающийся в программировании на 1С. Зато пользователю удобно пользоваться всегда одинаковым интерфейсом обработки — выбрал нужную настройку и загрузил. Надо стремиться к простоте, а мульен галочек и полей выбора в обработках по загрузке чего либо — это неправильно. Мое мнение такое.

    P.S.: На самом деле мне жаль бесцельно потраченного разработчиками времени на разработку какой то очередной супер пупер мега загрузки. Все равно всех нужных конкретному пользователю «галочек» не учтеш.

    Reply
  18. ZLENKO

    (25) Ну так я умею программировать в 1С 🙂 Ну а фирмы которых программист 1С не интересует, то они мне тоже не интересны 🙂

    P.S.: Я на днях в качестве теста для претендента на программиста 1С на поддержку клиенту дал задание сделать загрузку из Excel — человек написал жалкое подобие обработки с ИТС. Спросил у него зачем он это писал с нуля — есть же готового куча ? Отвечает что мол надо же было написать… И в этом есть большая проблема (среди 1С ников в том числе) — люди пишут, а не решают задачу (в смысле достижения конечной цели) наиболее эффективным способом.

    Reply
  19. asg1975

    На рознице 2.0 погонял. Очень даже понравилось. Автору еще разок спс. Сам с управляемыми формами еще не разбирался. Может кто подскажет где видео-обучалку какую-нибудь скачать на эту тему. Заранее благодарю.

    Reply
  20. Anna_G

    Спасибо. Полезная вещь.

    Reply
  21. Shade

    А в 10.3 не взлетит?

    Кто-нибудь пробовал?

    Отпишитесь, пожалуйста

    Reply
  22. Shade

    Ммм, ладно, скачаю и сам отпишусь 🙂

    Автору спасибо!

    Reply
  23. Shade

    Не работает :)))))

    Зато проверил,

    Может кому пригодится, так сказать

    Reply
  24. StepByStep

    (30) Shade,

    Обработка работает на «Розница 2.0.4.5», «Управление Торговлей 11.0.8.13».

    см. страницу публикации.

    Reply
  25. teflon

    удобный инструмент, разработчику респект.

    Reply
  26. StepByStep

    (32) teflon,

    Спасибо.

    Reply
  27. brunet

    Да отчет хороший. особенно для ADO метода

    Reply
  28. Moll

    В общем-то не плохая обработка, только жаль что не является универсальной для всех конфигураций, а только для разницы и управлении торговлей.

    Автору несомненно благодарности за проделанную работу, непременно попробую использовать её при работа с конфигурациями для которой она предназначена.

    Кстати сказать, планируется ли расширять список конфигураций, в которые обработка будет импортировать данные?

    Reply
  29. StepByStep

    (35) Moll,

    Спасибо.

    Обработка неуниверсальная, т.к. конфигурации имеют свои особенности как при формировании справочника номенклатуры (в смысле заполнения реквизитов), а также сопутствующих данных: таких например, как штрихкоды, номенклатура поставщика, цены постащика, и основное — документы.

    Список конфигураций будет расширен.

    Сейчас ведется работа по импорту в Комплексную Автоматизацию 1.1.

    В перспективе планирую и для Бухгалтерии 3.0.

    Reply
  30. Bacemo

    Вот для Бухгалтерии 3,0 это хорошо

    Reply
  31. AlX0id
    Вкладка «1С:ПЕДПРИЯТИЕ».

    Этапять!

    Reply
  32. nomadon

    пора бы 1су встатвить импорт в функции платформы

    Reply
  33. eugen91

    Я вот тоже этого не понимаю… В УТ нельзя загружать данные XML? Часто возникает потребность. Скиньте кто нормальную обработку для этих целей. Спасибо!

    Reply
  34. OrsoBear

    На линуксах, тем более 64-битных, не заработала.. но все равно плюсую, так как подошла как пример для разработки своей версии 🙂

    Reply
  35. StepByStep

    (41) OrsoBear,

    На линуксы, тем более 64-битные, не расчитана, только виндовс.

    Удачи в Вашей разработке.

    Спасибо.

    Reply
  36. OrsoBear

    Да, мы пошли по самому сложному пути, еще и управляемое приложение выбрали. Но зато интересно. Спасибо 🙂

    Reply
  37. StepByStep

    (43) OrsoBear,

    Сами создаем для себя сложности — потом с честью их преодолеваем …

    Еще раз — удачи.

    Reply
  38. Feelthis

    При загрузке из ods файла LibreOffice необходимо дату загрузить. В ячейку вбиваю 01.11.12 — загружает методом getDataArray() цифры 41 214. Не подскажите, как решить вопрос? (Кроме как поставить формат ячейки «текст»)

    Reply
  39. StepByStep

    (46) Feelthis,

    Во-первых, спасибо, указали на неточность.

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

    Во-вторых, решение есть:

    Текст — да — вариант, потом обработать

    Другой способ — преобразовать число в дату непосредственно при считывании и записи в некую таблицу значений

    или обработать эту таблицу (конкретные колонки с числами-датами) после первоначального считывания:

    // ДЛЯ LibreOffice.

    х_ДатаЯчейки = Дата(‘18991230’)+(х_ЧислоЯчейки)*60*60*24;

    где:

    х_ЧислоЯчейки — некое число, например, как у Вас 41 214.

    18991230 — начало периода отчета для LibreOffice.

    60*60*24 — число секунд в сутках.

    Reply
  40. KillHunter

    преобразовать данные можно разными методами.

    Reply
  41. VladimirVladimir

    Подскажите, а можно ли этой обработкой добавлять не элементы, а группы номенклатуры? Спасибо.

    Reply
  42. StepByStep

    (49) VladimirVladimir,

    Да, можно.

    Если в файле EXCEL есть:

    Реквизит формы:МаркаБренд — Варианты наименований в EXCEL: MARKA; BRAND; МАРКА; БРЕНД; ГРУППА-1

    Реквизит формы:КоллекцияСезон — Варианты наименований в EXCEL: COLLECTION; КОЛЛЕКЦИЯ; ГРУППА-2

    Сейчас подготавливается версия, думаю в начале следующей недели уже будет, где этот механизм скорректирован.

    Reply
  43. VladimirVladimir

    Ок, спасибо, буду ждать

    Reply
  44. StepByStep

    АНОНС.

    Завтра/послезавтра новая версия:

    ============================================================­================================================= Импорт из EXCEL 8.2.5.0.

    Розница 2.0.4-2.0.5, Управление Торговлей 11.0.8-11.0.9, Комплексная Автоматизация 1.1.27-1.1.28

    ============================================================­=================================================

    Новое и изменения в версии:

    — Добавлен импорт в Комплексную автоматизацию 1.1.

    — Изменены методы загрузки из файлов типа EXCEL. Модуль объекта.

    Теперь данные из файлов типа EXCEL считываются в соответствии с типами значений, а не строкой, как ранее.

    — Скорректирован механизм формирования групп в справочнике «Номенклатура», Характеристик в справочнике «ХарактеристикиНоменклатуры».

    — Оптимизация обработки.

    Сокращение количества серверных вызовов.

    — Внутренняя реорганизация обработки. Продолжение…

    Reply
  45. StepByStep

    Импорт из EXCEL тремя методами 8.2.5.0 28.11.2012г.

    Большое обновление.

    Обработка и загружается быстрее и откликается в процессе работы быстрее.

    Большое количество внутренних изменений.

    Reply
  46. StepByStep

    (54) Eugeneer,

    Исключено.

    Изначально подобный функционал существовал в обработке для конфигурации «Торговля и Склад» 7.7.

    В 8-ке был воссоздан и расширен в соответствии с пожеланиями пользователей.

    Reply
  47. StepByStep
    Reply
  48. graphbuh

    Посмотрел обработку. Восхищен. Хочу сделать что — то подобное для других целей. И все таки вот именно такие обработки не подрывают, а скорее, роняют рынок 🙂 — так что желаю доработать до необходимого уровня качества и сделать платной.

    Reply
  49. StepByStep

    (58) graphbuh,

    Над обработкой нужно много и серьезно поработать, чтобы довести ее «до ума».

    Удачи в разработке.

    Reply
  50. StepByStep

    (60) Eugeneer,

    Солидарность среди разработчиков безусловно должна быть.

    И общаться с ними нужно корректно. Без оскорбительных высказываний.

    Ведь сразу может быть и непонятно «что — к — чему».

    Большинство из того, что я делаю — это «от жизни».

    Если посмотрите на мои обработки — это же очевидно.

    Если что-то и вставляю чужое — то только,

    если Автор, присутствующий на ИНФОСТАРТе, дает на это «добро»:

    — непосредственно в обработке, описании к ней;

    — статье;

    — при личном обращении к Автору, как это было совсем недавно.

    По-моему такой подход вполне корректен.

    И в своих статьях и обработках я в заключении пишу «С уважением к сообществу МА!»

    И это не пустые слова.

    Reply
  51. StepByStep

    (62) Eugeneer,

    Однозначно.

    Reply
  52. bintape

    Предлагаю автору публикации для наглядности сделать сводную таблицу по трем методам загрузки из EXCEL. В таблице указать +/- = думаю будет здорово!

    Reply
  53. DoctorRoza

    Спасибо, очень нужная информация!

    Reply
  54. fixin

    Как тут не вспомнить мою обработку Чтец Экселя. Где чтение проводится однотипно разными методами, нужно только указать, какой метод использовать. Чтобы не переписывать код. Рекомендую изучить.

    Reply
  55. StepByStep

    (66) fixin,

    Невероятно, но — факт.

    Мы написали об одном и том же практически одновременно!

    ЭТО КЛАССНО!!!

    Reply
  56. chemezov

    (26) asg1975, Гугли курс Чистова по программированию от 2009 год, там достаточно полезной информации на эту тему

    Reply
  57. StepByStep

    Проверена работа на ПРЕ-релизе LibreOffice_4.0.0.1. Нормально.

    Reply
  58. AlexO

    (67)

    никакого факта и невероятности — Фиксин написал свою обработку уже давно и задолго за, а теперь перевыкладыввает для ИС заново 🙂

    Reply
  59. Naton

    StepByStep,

    Очень полезная вещь, но вместо создания документов оприходования и списания лучше бы создавать документ инвентаризация, а на основании него — можно и оприходовать и списывать, Вам не кажется?

    Reply
  60. StepByStep

    (71) Naton,

    С точки зрения функциональности (что-из-чего) 1С:Предприятие 8.Х это было бы правильно.

    НО:

    Импорт, в общем случае, предполагает, что необходимой информации в ИБ не существует.

    Пример:

    При внедрении «рабочая» база пуста, следовательно, документ «Инвентаризация» не имеет смысла.

    При переносе информации, например из 1С:Предприятие 7.7, можно воспользоваться документом «Оприходование».

    Reply
  61. Naton

    В Рознице 2.0

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

    а дальше — на основании инвентаризации делаем и приход и списание.

    В БП в инвентаризации есть кнопка — перезаполнить учетное количество.

    В УТ не знаю. Но врядли в ней этот момент не учтен?

    Reply
  62. StepByStep

    (73) Naton,

    СПАСИБО.

    Обязательно это посмотрю.

    Reply
  63. StepByStep

    (75) SubSystems,

    Только стоило бы правду написать, что особенность спистенная из другой разработки другого автора.

    Ничего подобного.

    Было уже многое сказано по этому поводу.

    Reply
  64. StepByStep

    (77) SubSystems,

    Не следовало и начинать обсуждать.

    Reply
  65. DoctorRoza

    (0) подскажите пожалуйста. У меня настроено регл. задание по перепроводке документов за определенный период (сейчас с 01.01.2013г). Для проверки корректности проведения, было сделано создание эксель-файла с результатом проведения, ссылкой, датой и т.п. Регл. задание делается без проверки прав, на сервере. Excel’я, естественно, на сервере нет, поэтому создание лога делал через ADO (спасибо, у Вас узнал как). Документов перепроводится 8500. Вопрос в следующем: после перепроведения лог-файл слишком долго создается, где то 25 минут и чем дальше, тем дольше! Регл. задание начинается в 5.30 и оканчивается в районе 09.50, файл датируется в районе 10.10. Можно как то ускорить это процесс? Да и в принципе, это нормально такая работа?

    p.s.

    Может не по теме, извините!

    Reply
  66. StepByStep

    (79) DoctorRoza,

    Лог по 8500 документов может быть достаточно большим, зависит от того что и как Вы в него записываете.

    где то 25 минут и чем дальше, тем дольше!

    — В Вашем вопросе есть уже и ответ — будет еще дольше.

    Поэтому:

    Рекомендую log-файл делать текстовым.

    У меня на контроллере домена (также терминальный сервер) логи о входах-выходах пользователей осуществляются именно в текстовый файл.

    К тому же, это для просмотра удобнее.

    Reply
  67. DoctorRoza

    (80) спасибо, буду знать. А вот насчет просмотра, с xls-файлом наоборот проще (ИМХО), по крайней мере фильтрация в колонке есть. Видимо, все от задачи зависит.

    Reply
  68. maverick76

    За идею +

    Reply
  69. StepByStep
    Reply
  70. MartyNSK

    О боже, маню решили потеснить с поприща короля загрузок из экселя))))

    Reply
  71. StepByStep

    21.06.2013г. «Импорт из внешнего источника в 1С» 6.1. НОВАЯ ВЕРСИЯ. НОВАЯ РЕДАКЦИЯ.

    Новое и изменения. Основное:

    Добавлена поддержка семейства конфигураций «Бухгалтерия предприятия» версии 3.0:

    — «Бухгалтерия предприятия»;

    — «Бухгалтерия предприятия КОРП»;

    — «Бухгалтерия предприятия (базовая)».

    Оптимизация обработки.

    — Сокращение количества «серверных» вызовов процедур и функций.

    Свойства элементов формы.

    — Увеличено количество реквизитов формы и таблиц, использующих свойства реквизитов конфигураций:

    «Связи параметров выбора», «Параметры выбора», а также «Выбор групп и элементов», «Форма выбора».

    Прочие менее значительные изменения.

    Reply
  72. webresurs

    Ошибка при открытие

    {ВнешняяОбработка.ИмпортИзВнешнегоИсточникаВ1С.МодульОбъекта(1769)}: Значение не является значением объектного типа (Типы)
    Для Каждого ТипДок ИЗ ОписаниеТиповДокументов.Типы() Цикл
    

    из-за чего ошибка, как поправить?

    Reply
  73. StepByStep

    (86) webresurs,

    Скажите, пожалуйста, какая конфигурация ?

    Reply
  74. webresurs

    (87) УНФ

    Reply
  75. StepByStep

    (89) webresurs,

    Сожалею, но на УНФ обработка не расчитана.

    Со страницы публикации:

    21.06.2013: «ИМПОРТ ИЗ ВНЕШНЕГО ИСТОЧНИКА В 1С» 6.1. НОВАЯ ВЕРСИЯ. НОВАЯ РЕДАКЦИЯ.

    Поддерживаемые конфигурации (РОССИЯ):

    — «Розница», «Розница (базовая)» версия 2.0.

    — «Управление Торговлей» версий 11.0 и 11.1.

    — «Бухгалтерия предприятия», «Бухгалтерия предприятия КОРП», «Бухгалтерия предприятия (базовая)» версия 3.0.

    Что можно попробовать сделать в данной ситуации:

    Так как многое из настройки на конфигурацию вынесено в макеты, то:

    Есть понятие конфигурация «Неопределено» (как правило — это последняя колонка в макетах).

    В макетах прописать информацию о реквизитах, правилах формирования.

    Вдруг получится.

    Но уверенности нет. Алгоритмы под такую «Неопределенную» конфигурацию еще детально не рассматривал.

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

    Конкретно по ошибке, указанной Вами:

    Необходимо в макете «ТипыДокументов»

    Прописать документы, с которыми работает обработка из состава:

    ДокументСсылка.ПоступлениеТоваров

    ДокументСсылка.УстановкаЦенНоменклатуры

    ДокументСсылка.ОприходованиеТоваров

    ДокументСсылка.УстановкаСебестоимости

    ДокументСсылка.ПересчетТоваров

    Очевидно в конфигураторе указаны другие имена документов.

    В настоящее время подготавливается к выпуску версия, содержащая поддержку работы в «Комплексной Автоматизации» 1.1.

    Reply
  76. gurtas

    что-то не могу понять как реализована загрузка номеров гтд в УТ11….у меня файл, где есть Артикул, Номер ГТД, Страна происхождения…как ни бился с обработкой ….не получается….

    Reply
  77. TbSasha

    (75) SubSystems, ну вы написали! Как будто можно это сделать по другому. Еще бы написали что обработку загрузки вообще делать нельзя что только ваша идея.

    Reply
  78. StepByStep

    (92) TbSasha,


    (75) SubSystems, ну вы написали! … Еще бы написали что обработку загрузки вообще делать нельзя что только ваша идея.

    Не в бровь — а в глаз.

    Reply
  79. StepByStep
    Reply
  80. TbSasha

    (94) Eugeneer, я понимаю но вы не можете таблицу сопоставлений полей 1с и excel присвоить как свою оригинальность. Эта сама очевидность.

    Reply
  81. StepByStep

    10.07.2013 г. Импорт из внешнего источника в 1С 6.2 НОВАЯ ВЕРСИЯ. НОВАЯ РЕДАКЦИЯ.



    Новое и изменения. Основное:

    — Добавлена поддержка конфигурации «Комплексная автоматизация» версии 1.1.

    — Добавлен учет в валюте.

    — Добавлены реквизиты на форму и их обработка.

    — Оптимизация, дополнена справка обработки, прочие изменения.

    Reply
  82. TbSasha

    А почему обработка не работает если вставить ее в конфигурацию?

    Reply
  83. StepByStep

    (98) TbSasha,

    Встраивание в конфигурацию на данный момент сделано как «затравка».

    В одной из следующих версий планируется реализовать механизм работы.

    Reply
  84. TbSasha

    То есть тут идет поиск по номенклатуре? По справочнику «НоменклатураПоставщиков» поиска нет? По моему правильно было бы вести поиск по «НоменклатураПоставщиков» и через него сопоставлять товары со справочником «Номенклатура».

    Reply
  85. StepByStep

    (100) TbSasha,

    Конфигурации «Розница» и «Комплексная автоматизация» справочник «НоменклатураПоставщиков» отсутствует.

    Конфигурации «Управление торговлей» и «Бухгалтерия предприятия» ведение «НоменклатурыПоставщиков» не является обязательным.

    Основной реквизит табличной части «Товары» документов «Номенклатура».

    Reply
  86. TbSasha

    (101)

    Зато в управление торговлей 11 он есть. Просто по справочнику «НоменклатураПоставщиков» было бы гораздо точнее делать поиск. Можно туда один раз записать название из прайса и всегда по нему точно находить. К тому же не плохо бы сделать документ «Регистрация цен поставщиков» и как раз по этому справочнику поиск осуществлять.

    Reply
  87. StepByStep

    (102) TbSasha,

    — В общем случае по наименованию, Номенклатура «#» НоменклатураПоставщика. В большинстве случаев «=».

    — РегистрСведений «ШтрихкодыНоменклатуры»: Номенклатура = СправочникСсылка.Номенклатура.

    Поиск по Штрихкоду — наиболее быстрый и, как правило, однозначный, если есть Штрихкод.

    — Формирование «Регистрация цен поставщика» — на основании документа «Поступление» штатно.

    и последнее:

    — Случай, когда действительно полезен поиск по НоменклатуреПоставщика — когда все остальные

    поиски не привели к результату.

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

    В ОБЩЕМ — СПАСИБО. ПОЛЕЗНО. НАДО БУДЕТ РЕАЛИЗОВАТЬ.

    Reply
  88. TbSasha

    (106) у меня штрих кодов нет и поиск по ним не веду. Поиск по номенклатуре не может быть таким точным как по спр. НоменклатураПоставщика потому что у меня названия меняются от названий в excel прайсе поставщика. Потом хотелось бы делать документы «Регистрация цен поставщика» и «Регистрация цен конкурента» без поступления. Если сравнивать цены конкурентов то тут точно необходимо вести поиск по НоменклатураПоставщика потому что названия одного и того же товара могут прилично отличатся у разных поставщиков, конкурентов. В общем это к тому что это просто необходимо. Ждем этой реализации!:)

    Reply
  89. StepByStep

    (109) TbSasha,

    1 Номенклатура — Множество НоменклатураПоставщиков ?!

    Вопрос по НоменклатуреПоставщика — в процессе разработки.

    Формирование документов «Регистрация цен поставщика» и «Регистрация цен конкурента» пока не рассматривал.

    Это — на перспективу.

    Reply
  90. StepByStep

    (1) Saint,

    Я так понимаю, что метод «Microsoft ADO» в клиент-серверном варианте на архитектуре x64 традиционно работать не будет?

    Скажите, пожалуйста, Вы пробовали устанавливать

    Драйвер подключения Provider=Microsoft.ACE.OLEDB.12.0:

    Установленный Microsoft Access Database Engine 2010 Redistributable SP2 (7/22/2013) 32 и 64 — разрядные версии:

    Microsoft ADE 2010: http://www.microsoft.com/en-us/download/details.aspx?id=13255

    Если да, то каковы результаты ?

    Reply
  91. Saint

    (139)

    Скажите, пожалуйста, Вы пробовали устанавливать

    Драйвер подключения Provider=Microsoft.ACE.OLEDB.12.0:

    Установленный Microsoft Access Database Engine 2010 Redistributable SP2 (7/22/2013) 32 и 64 — разрядные версии

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

    Reply
  92. artbear

    (139)

    Да, на 64-разрядном сервере все хорошо.

    лично ставил и проверял пару месяцев назад.

    Reply
  93. StepByStep

    (140) Saint,

    СПАСИБО.

    Reply
  94. StepByStep

    (141) artbear,

    СПАСИБО. ОЧЕНЬ ХОРОШО.

    Reply
  95. IG

    Уважаемый автор!

    Скачал три типа файлов:

    1. Импорт из внешнего источника 7.2. РОССИЯ: Розница 2.0, УТ 11.0, 11.1, БП 3.0, КА 1.1. УКРАИНА: УТ 3.0 27.11.2013 23:18 285,61Kb

    2. Импорт из Excel в 1С тремя методами 8.2.5.1: Розница 2.0.4(5), УТ 11.0.8(9), КА 1.1.27(28) 27.11.2013 23:15

    191,65Kb

    3. Импорт из Excel в 1С тремя методами 3.0 27.11.2013 23:15

    135,17Kb

    Ни один из файлов не запускается, как внешняя обработка. Не выдает ни каких ошибок. Вообще не дышет;)

    8.2.19.83 / КА 1.1.43.2

    Reply
  96. StepByStep

    (195) IG,

    Из текста публикации:

    *** Конфигурация «Комплексная автоматизация», в основном, расчитана на работу в обычном интерфейсе, поэтому, для комфортного использования обработки, рекомендуется встроить ее в конфигурацию.

    Имеется возможность использовать обработку как внешнюю, но в управляемом интерфейсе.
    Reply
  97. smurf_da

    Подскажите пожалуйста, пытаюсь запустить обработку под тонким клиентом, 1С клиент-серверная версия УТ 11. Пишет что «Невозможно загрузить данные, т.к. невозможно открыть для чтения файл: C:Users
    orekhovDesktop22.08.2015Загрузка номенклатуры est_02092015_ok.xlsx» — файл точно ничем не занят.

    {(1)}: Ошибка при вызове метода контекста (Прочитать): Каталог не обнаружен ‘C:Users
    orekhovDesktop22.08.2015Загрузка номенклатуры est_02092015_ok.xlsx’ — либо так на режиме Native XLS

    Начал ковыряться в настройках. наткнулся на проблему с временными каталогами, задаю каталог на сервер, где можно хранить данные временно вручную, ругается что данного каталога нет, Хотя он точно есть, через rdp проверил.

    Как быть в таком случае? или есть альтернативные варианты заполнить таблицу?

    Reply
  98. StepByStep

    (494) smurf_da,

    Каталог для файлов: либо на сервере приложений, либо в расшаренном каталоге.

    Каталог для временных файлов — лучше по-умолчанию.

    Reply
  99. bimy22

    (2) Плюсую, действительно, на 64 всё идёт прекрасно.

    Reply

Leave a Comment

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