Универсальный журнал документов для 1С 8.1, 8.2 и 8.3 (3.20.1.8)




Принцип обмена данными из 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. e.kogan

    Тогда уж сделайте и настройку цветовой разметки, была и такая версия. Заодно 🙂

    Ну и там редактирование всего-что-только-можно, включая движения, с контролем прав…

    Reply
  2. Alef

    При выводе журнала в виде дерева напрашивается вывод с учетом подчиненности. В настоящий момент, мне кажется, это еще не реализовано Можно добавить флажок «С учетом подчиненности» в настройки.

    Reply
  3. alexk-is

    (1) Пока поборол только работу с закладками и табличными полями на них. Удалось практически избавиться от промелькивания. Пока основных отличий три:

    — Вывод списка документов в виде дерева;

    — Просмотр реквизитов документов;

    — Работа с закладками и табличными полями на них.

    Для начала думаю нужно добавить отчетность и выйти на паритетное функциональное наполнение. Остальное тоже думаю продвигать, но уже во вторую очередь.

    Reply
  4. alexk-is

    (2) Есть несколько моментов, которые в отчете со структурой подчиненности выглядят не однозначно. Это подчиненность один ко многим, а также рекурсивные и циклические ссылки. Тему нужно очень хорошо покачать. Буду думать, а пока поставлю крестик на память. 🙂

    Reply
  5. Ish_2

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

    Возможный сценарий.

    Если используется дерево в табличном поле, то вначале каждой строке документа искуссвенно добавляется подчиненная пустая строка ( появляется «+» в начале строки) . Событие раскрывания строки дерева перехватывается — пустая строка удаляется и в дерево подчиненных строк выводятся подчиненные документы первого уровня.

    Смысл такого сценария очевиден : выводить подчиненные документы только для документа который выбрал пользователь (нажал плюсик в начале строки).

    Этот «плюсик» и перехватывание события «раскрывания» можно рассматривать и как дополнительный полезный функционал для действий с документом.

    ОФФ. Функционально такой сценарий похож на подход Clappa к построению бухотчетов , только реализованный другими , уже строенными средствами платформы.

    Мимо такого использования дерева прошел Evroi в Универсальной ОСВ http://infostart.ru/public/21322/ лишь повторив «рукопашно-семерочный» стиль Clappa.

    И если для Clappa в 77 такой стиль был единственно возможным, то применение такого стиля в 8 считаю серьезным просчетом разработчика.

    …Мне так кажется.

    Reply
  6. alexk-is

    (5) Приблизительно в этом направлении я и пытался построить работу. Вчера не получилось, пришлось пойти более простым путем. Буду пробовать снова.

    Reply
  7. s_a_r_u_m_a_n

    (0) быстрая печать печ. форм документов, в т.ч. реестра документов, была очень удобной. в данном релизе похоже вырезана. я бы вернул )

    Reply
  8. alexk-is

    (7) Нет, не вырезана. Еще не добавлена. Пока борюсь за производительность. Функциональное наполнение постараюсь вывести на паритетный уровень. Сейчас для меня важнее выяснить имеется ли интерес именно к представлению информации в виде дерева и как эту тему можно ещё прокачать.

    Reply
  9. alexk-is

    (2) (5) Перерисовал работу с деревом. Теперь начальное дерево строится быстрее. Детальная информация формируется по отдельному дополнительному запросу при разворачивании группировки.

    Имеет ли смысл при построении структуры подчиненности разворачивать всё дерево или достаточно только первого уровня?

    Reply
  10. Ish_2

    (9) Конечно, однозначного ответа нет. Более простой, быстрый и с меньшим количеством вариантов и подвариантов подход — это разворачивать только первый уровень.

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

    На мой ,сугубо личный взгляд.

    Reply
  11. alexk-is

    (10) Вот и я склоняюсь к разворачиванию 1 уровня. Должно работать быстро. В конце концов ещё есть отчет.

    Добавил поиск по номеру документа.

    Столкнулся с тем, что портировать наработки из http://www.infostart.ru/public/61344/ не получается. Все они заточены под работу с таблицей значений. Приходится писать практически всё с самого начала.

    Reply
  12. Ish_2

    (11)»Приходится писать практически всё с самого начала.»

    Мне кажется , ты уже решил «попробовать» дерево.- Деваться некуда.

    Reply
  13. alexk-is

    Ну, да.

    Провел опрос. Рассказал про то, что уже есть. Первый вопрос: «А по контрагенту?»

    Думаю в этом направлении нужно поработать. Добавлю для начала группировку по реквизиту.

    Reply
  14. alexk-is

    Добавил группировку по первой графе из списка граф

    Reply
  15. alexk-is

    Добавил отбор по текущему значению в дереве документов

    Reply
  16. alexk-is

    (7)

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

    Добавлена печать произвольного отчета на основе СКД.

    Добавлена быстрая печать для текущего документа печатных форм этого документа.

    Reply
  17. Crush

    Полезный инструментик. Спасибо! 😉

    Reply
  18. alexk-is

    (17) Ура. Первый положительный отзыв.

    Reply
  19. valden007

    Спасибо за обработку.

    Список пожеланий:

    1) Не отрабатывает отбор по признаку «Проведен» при нажатии кнопки отбор по текущему полю

    2) Добавить возможность получения итогов по числовым полям.

    Reply
  20. alexk-is

    (19) Добавил отбор по иконке.

    С итогами хуже. Могут быть итоги как по детальным строкам, так и по группировкам. Нужно хорошо подумать, как это реализовать во всех трех режимах работы.

    Reply
  21. alexk-is

    Добавил возможность просмотра истории документа по журналу регистрации.

    Добавил возможность перехода в типовой журнал для текущего документа.

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

    Reply
  22. 1Ssss

    Обработка супер!

    Не хватает только вывода структуры подчиненности документа. Например, если сделать вывод по документу Реализация товаров и услуг и будет отображаться его структура подчиненности(например ПКО и Расходный ордер на товары, ну и т.д.), то было вообще классно, т.к. это позволило бы получить очень мощный продукт с помощью которого можно вести аналитику…например какие Реализации оплачены, а какие нет…вотЪ;)

    Reply
  23. Ish_2

    Согласен с (22) .

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

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

    Есть хлопоты и нюансы в реализации , конечно.

    Но в целом так симпатичнее.

    Reply
  24. Ish_2

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

    Полезная возможность.

    Reply
  25. Ish_2

    +23 Правда отсюда вытекает , что вывод журнала в виде списка становится ненужным.

    Можно выводить документы только в «дерево» ( с группировкой по параметру или без).

    Reply
  26. alexk-is

    (25) «В виде списка» это тоже дерево, только одноуровневое.

    Reply
  27. Bihbeb

    Прекрасная разработка, спасибо за труд, жду обновлений.

    Reply
  28. cheri

    Обработка понравилась, очень не хватало её в работе, благодарность автору и плюс!

    Reply
  29. alexk-is

    (19) (27) Добавил возможность выводить по суммовым полям общие итоги и итоги по группам.

    Добавил возможность выбора реквизитов документов с заполнением списка граф.

    Reply
  30. alexk-is

    (2) (22) (23) По немногочисленным просьбам добавил ещё один режим работы «5. В виде дерева с иерархией подчиненых документов»

    Reply
  31. Ish_2

    (30) От немногочисленных деревожелателей шлю привет .

    Reply
  32. alexk-is

    (31) А теперь специальная версия только для «деревожелателей». Добавил возможность сворачивать и разворачивать видимые строки или все строки группировок.

    Reply
  33. Ish_2

    (32) Исполняешь желания — жди когда сядут на голову.

    Reply
  34. alexk-is

    Для построения дерева в режиме «5. В виде дерева с иерархией подчиненных документов» необходимо также описать в настройках виды обрабатываемых подчиненных документов.

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

    Reply
  35. alexk-is

    (33) Выборочно. По мере созревания мысли.

    Reply
  36. alexk-is

    Постараюсь здесь отвечать на возникающие вопросы по этой разработке

    Reply
  37. 1Ssss

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

    Детализация по подчинености документов реализована и это круто. Единственное что плохо, так это много телодвижений. Если бы журнал сразу(по умолчанию) раскрывал структуру подчиненности, а то так приходиться кнопку нажимать 🙂 И это страшно портит юзабилити…..ВотЪ 😉

    Reply
  38. alexk-is

    (37) Если внимательно посмотреть код, то станет понятно, что данная разработка имеет очень мало общего с http://www.infostart.ru/public/61344/ и с типовыми «Универсальными журналами документов». Проще говоря, разработка велась практически с нуля.

    Отчасти это связано с различными источниками данных для построения дерева и для дополнительных сервисных функций. Поэтому механизмы, которые на текущий момент имеются в данной разработке, это то, что я успел портировать. Ну, и как побочный эффект — всё работает быстрее.

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

    Для группового раскрытия уровней я добавил кнопку. Этого мало?

    Reply
  39. alexk-is

    (37) Добавил возможность сохранения / восстановления настроек для конфигураций не имеющих поддежки механизма «Сохранённые настройки». Добавил возможность сохранения настроек журнала в файл и восстановления настроек журнала из файла.

    Reply
  40. alexk-is

    (2) (5) (22) (27) (28) Оптимизированы операции разворачивания уровней в режиме «5. В виде дерева с иерархией подчиненых документов». Средний показатель ускорения при разворачивании в 20 раз.

    Оптимизированы некоторые другие режимы работы.

    Reply
  41. Ish_2

    (40) Ага , посмотрел. Я тебя предупреждал , что если исполняешь желания , то сядут на голову. Итак, Сажусь !

    У тебя в специальном режиме («5») выводится список документов с возможностью («плюсик») разворачивания каждого документа по подчиненным.

    Я же толковал о том , что более круто, чтобы в ЛЮБОМ режиме вывода списка рядом с документом появлялся «плюсик», нажав на который пользователь бы получил возможность увидеть все его подчиненные документы в этом же табличном поле.

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

    Например : Если текущий документ — Расходная накладная N 1 , то я бы хотел увидеть :

    +РасходнаяНакладная N 1 — (исходная строка списка докукументов)

    ——+Счет

    ———-+ Расходная накладная N 1

    —————+СчетФактура

    А у тебя бы появилась только СчетФактура.

    Зачем это нужно ?

    Дело в том , что при выводе только нижнего уровня , у тебя получится что СчетФактура вообще не имеет структуры подчиненности. И пользователь не увидит , какому документу она подчинена.

    Такое вот скромное пожелание…

    Reply
  42. alexk-is

    (41) Попробую ответить по порядку — почему сделал так как есть, а не иначе.

    Оставил «1. В виде списка» т.к. работает быстрее, чем «5. …». Для поддержания режима дерева необходимы дополнительные данные и соответственно манипуляции с ними.

    Отдельный режим для «5. …» сделан потому, что спрогнозировать работу дерева для 2х уровней представляется реальным, для большего количества уровней уже становится грусно. Слишком много режимов работы. Сейчас уже используется около 20 динамически фомируемых запросов вместо трех в типовом журнале.

    Предполагал, что структура журнала будет, например, такая

    Reply
  43. Ish_2

    (41) Не понял :

    Режим «1. В виде списка » работает быстрее чем режим 5.»

    Странно. В моём понимании дело обстоит так :

    Первоначальный запрос и вывод списка документов должен быть одинаков что для 1 , что для 5.

    В режиме 5 лишь появлется дополнительная интерактивная возможность по «плюсику» запускать вывод структуры подчиненности .

    Другими словами , дерево документов со всеми подчиненными при первоначальном выводе не формируется. При нажатии на «плюсик» у текущей строки подчиненные строки отсутствуют. Мы перехватываем событие «раскрытия» запускаем на исполнение процедуру поиска подчиненных и выводим подчиненное дерево.

    У тебя , судя по всему не так. И дерево со всеми подчиненными формируется сразу — отсюда и замедление. Наверное , так.

    Reply
  44. alexk-is

    (43) В режиме «5. …» дерево сразу со всеми подчиненными не формируется. Первоначальный запрос почти одинаков для режимов 1 и 5. Для режима «5. …» формируется дополнительная колонка УровеньРазвернут. Соответственно формирование и обработка дополнительной колонки, а также «рисование плюсиков» в результате дают некоторое замедление. Раньше в режиме «5. …» была ещё поддержка возможных типов, так пришлось её вырезать и ограничиться выбранными в настройках видами документов. Совсем медленно получалось.

    Reply
  45. demo-05

    неплохо бы увидеть под 8.2

    Reply
  46. Kettle

    (45) А кто мешает конвертнуть самостоятельно?

    Reply
  47. 1Ssss

    Седня посмотрел обработку….вроде всё круто, только вот есть коя-какая каша 😉

    Например, я выбираю три типа документов(самое простое), Заказ покупателя-ПКО-Релализация товаров и услуг, делаю вывод по структуре подчиненности и ….

    и вот какая история…..идет Заказ покупателя и разворачивает ПКО и рядом Реализацию…хотя лучше если это будет третий уровень! Ну да ладно, это не создает каши….а вот если посмотреть дальше, то потом отдельно видно этот же ПКО и у него разворачиваеться эта же Реализация….было бы очень круто, если документ который уже где-то находиться в структре подчиненности больше не выводился в журнал и если бы создавался третий(четвертый, пятый) уровень подчиненности…вотЪ;)

    Reply
  48. alexk-is

    (47) Может быть попробовать так, как написано в (34) ?

    Reply
  49. alexk-is

    (45) (46) Возможно подразумевалась работа в режиме управляемого приложения?

    Reply
  50. 1Ssss

    (48)Пардон;) Был не прав! Прошу прощение:) Спасибо за обработку 😀

    ВотЪ 🙂

    Reply
  51. alexk-is

    (50) Камень с души… 🙂

    Reply
  52. alexk-is

    (1) Добавил настройку оформления. Теперь можно изменить цвет фона, цвет текста или шрифт для строк по условию.

    Reply
  53. e.kogan

    [30.04.2010] Добавлен поиск по номеру документа.

    [03.05.2010] Добавлен отбор по текущему значению в дереве документов. Добавлена печать реестра документов с иерархией.

    [04.05.2010] Добавлена печать произвольного отчета на основе СКД. Добавлена быстрая печать для текущего документа.

    [05.05.2010] Добавлена возможность просмотра истории документа по журналу регистрации. Добавлена возможность перехода в типовой журнал для текущего документа.

    [11.05.2010] Добавлена возможность сохранения / восстановления настроек для конфигураций не имеющих поддежки механизма «Сохранённые настройки». Добавлена возможность сохранения настроек журнала в файл и восстановления настроек журнала из файла.

    А это ж и у меня было. Что-то пришлось переделывать?

    Reply
  54. e.kogan

    И кстати — куда делась ссылка на оригинал?

    Reply
  55. alexk-is

    (54) ой… 🙂

    Reply
  56. e.kogan

    (55) То-то же 😎

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

    И — хотелось бы услышать ответ на вопрос (53).

    З.Ы. Провесила ссылку в своей. Вы меня по плюсам уже обогнали 😉

    Reply
  57. alexk-is
    Reply
  58. alexk-is

    (56)

    Я, видимо, разработку прекращу 

    Может быть зря. Некоторые вещи в дереве реализовать невозможно или очень сложно. Например, «возможность быстрых отборов по колонке a la Excel» реализовать проблематично опять же по причине, что данные для дерева собираются в свернутом виде.

    Reply
  59. e.kogan

    (57) Ок. Остались вопросы по:

    1. «Изменена схема подключения внешних печатных форм» — посмотрю, утащу себе, если вы не против и если она подходит для моей.

    2. «Первоначально использовался для сохранения типовой механизм. Позже была добавлена схема сохранения в параметрах пользователя в случае отсутствия типового механизма. Ну, и сохранение во внешних файлах. Структура хранения данных во внешних файлах немного другая — совместимая с типовым механизмом хранения настроек. Все перечисленные настройки и доработки были именно добавлены, т.к. при разработке за основу был взят типовой универсальный журнал документов.» Если вы всё-так основывались на моей — там настройки сохранялись совсем не в «Сохранённые настройки». Чесслово.

    Да, кстати, вот сохранение в типовой механизм я себе всё же добавлю.

    Reply
  60. e.kogan

    (58) Найдёте ещё что-нибудь, чего у меня пока нет, а у вас не может быть реализовано — пишите 🙂

    Reply
  61. alexk-is

    (59) За основу был взят типовой универсальный журнал из УПП, а там настройки сохранялись с использованием регистра сведений «Сохраненные настройки». Чесслово. 🙂

    Reply
  62. alexk-is

    (60) У меня файл 111 Кб против 226 Кб. Интересно из-за чего такая большая разница?

    Reply
  63. alexk-is

    (59)

    1. «Изменена схема подключения внешних печатных форм» — посмотрю, утащу себе, если вы не против и если она подходит для моей.

    Нет. Не против. Думаю подойдет, т.к. строится по ссылке на документ. Ускорение получается из-за того, что список печатных форм строится не для каждой строки журнала в случае смены вида документа, а только 1 раз для вида документа. Для всех остальных документов этого вида список печатных форм берется из «кэша». Все кэши сбрасываются при обновлении журнала документов.

    Reply
  64. e.kogan

    (61) Хм. То есть не мой? У меня точно самым базовым сохраняется.

    З.Ы. Уже вижу, что не мой. Тяжелее переделывать было?

    (62) У меня больше форм и почти к каждой есть хелп. Плюс пять немало весящих макетов.

    Замечания: почему «История объекта» активна при текущей строке-группировке (месяц, к примеру)? Почему, наоборот, неактивны структура подчинённости и отчёт по движениям?Почему нет вопроса о сохранении настроек в случае их модифицированности (и/или возможности его включения)? Где, собственно, кнопка настройки условного оформления?

    Ну и хелп хорошо бы актуализировать.

    Reply
  65. e.kogan

    (63) Не подойдёт. В ВПФ есть отборы по реквизитам, они нужны в обязательном порядке. Построите список для Реализации на комиссию — как обычную напечатаете? А вид документа один.

    Условное офомление нашла. Случайно. Неудачное размещение, тем более без хелпа.

    Reply
  66. e.kogan

    Условное оформление не работает 🙁

    Строковый реквизит, «Содержит», по факту есть, а не выделяет как описано.



    В режиме дерева работает, в плоском — нет.

    Reply
  67. alexk-is

    (66) Странно… А версия какая?

    Reply
  68. alexk-is

    (65) Об этом я не подумал. Хм… Нужно будет что-нибудь сделать.

    Reply
  69. e.kogan

    (66) 2.14.0.1, что было на момент комментирования — то было ) в 1.1 работает.

    Reply
  70. alexk-is

    (65) Условное оформление вывел на отдельную кнопку. Раскрашивать стало интереснее.

    Reply
  71. e.kogan

    (70) Ой-ой-ой. Вот только не эту картинку на кнопку 🙁 возьмите, например, из семёрочных коллекций что-нибудь с кисточкой. Уж очень часто мне приходится использовать кнопку с такой картинкой по прямому назначению.

    Reply
  72. Ish_2

    Посмотрел на последние изменения.

    Алексей , ты чего-то вошел в раж ! И шуруешь и шуруешь.

    Ну , раз ты уже дошел до цветочков и рюшечек (перехват события «ПриПолученииДанных».. наверное.. замедляет вывод), ТО пора заняться и «перетаскиванием мышью » в журнале. Скажем, хочу интерактивно мышью перетащить нужные документы из одной даты в другую (с перепроведением , конечно).

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

    Слабо ?

    Reply
  73. alexk-is

    (72) Нужен источник и приемник. Тогда можно перетаскивать. Особых проблем с реализацией не вижу (пока во всяком случае). Хотелось чтобы было какое-нибудь практическое применение.

    Reply
  74. alexk-is

    (72) Добавил возможность перетаскивать ссылки на документы из журнала документов. Например, в форму «История документа», текстовый документ или табличный документ.

    Reply
  75. Ish_2

    (74) Раз уж журнал — универсальный, то полнотекстовый поиск по документам необходим.

    Reply
  76. alexk-is

    (71) Картинку сменил

    Reply
  77. alexk-is

    (75) Повидимому быстренько сделать не получится. Тестовая база ушла на индексацию и вернуться не обещает. 🙁

    Reply
  78. Ish_2

    (77) Ага. Как правило, никто базу не индексирует для полнотекстового поиска.

    Reply
  79. kwas

    Журнал супер!!! Только не могу разобраться сохранение/ восстановление настроек списка.

    При восстановлении выводит все графы с положением = новая колонка Что может быть ?

    Reply
  80. alexk-is

    (79) Настройки табличного поля не сохраняются. Пока не сохраняются.

    Reply
  81. alexk-is

    (75) Добавил полнотекстовый поиск по документам. Для использования полнотекстового поиска, полнотекстовый поиск должен быть включен. Иначе закладка полнотекстового поиска будет недоступна.

    Reply
  82. Маргоша

    мне понравилось! Замечательные возможности отбора по реквизитам табличной части.

    😀

    Reply
  83. alexk-is

    (2) (5) (22) (27) (28) (82) Наконец-то окончательно разобрался с поиском. Теперь найдется всё!

    Reply
  84. alexk-is

    Добавил бонус — поиск контрагента по контактной информации.

    Reply
  85. alexk-is

    (79) Починил. Сохранение работало, с восстановлением были проблемы.

    Reply
  86. zzerro

    эмс… ошибка при группировке документов:

    {Форма.ОсновнаяФорма(847)}: Ошибка при вызове метода контекста (Добавить): Поле не найдено. «УровеньРазвернут»

    Для каждого Поле Из МассивВыбранныеПоля Цикл ВыбранныеПоля.Добавить(Поле) КонецЦикла;

    по причине:

    Поле не найдено. «УровеньРазвернут»

    Reply
  87. zzerro

    И еще… можно ли отсортировать по синониму документа список выбора документов для журнала 🙂

    Ну и еще отдельно сделать группировку по Организации 🙂 если таковая канечно есть в графах

    Reply
  88. alexk-is

    (86) Что-то я немного перестарался. Исправлено.

    Reply
  89. alexk-is

    (87) Специально не стал сортировать, может быть зря.

    Группировку по организации можно сделать, если использовать режим «4. В виде дерева. Группировка по первой графе из списка граф». Необходимо добавить графу «Организация» и установить ее первой (верхней) в списке граф.

    Reply
  90. Pashkaa

    В окне отбора и сортировки, тыкаю кнопку Добавить на вкладке Отбор. В открывшемся окне реквизитов не выбирая ничего тыкаю отмена и получаю:

    {Форма.ФормаОтбора.Форма(25)}: Значение не является значением объектного типа (ПутьКДанным)

    Если ЭлементыФормы.Отбор.ТекущиеДанные.ПутьКДанным = «ВидДокумента» Тогда

    Поправьте недочет.

    Reply
  91. alexk-is

    (170) Исправлено в 2.26.0.2

    Reply
  92. Vadeus

    (30) От немногочисленных деревожелателей шлю привет .

    Reply
  93. alexk-is

    Поздравляю всех «деревожелателей» (31) с очередным юбилеем. Теперь +800. Прикольно…

    Reply
  94. Ish_2

    (687) ..И забыть уже пора.

    Но слаб человек.

    Reply
  95. alexk-is

    (688) Ой, прости. Я нечаянно. 🙂

    Reply
  96. yulek.b@gmail.com

    (30)

    Добрый день.

    Почему-то обработка открывается пустым окном. Версия 1С 8.3 УТ 11.1.9.66. Как ее открыть?

    Reply
  97. alexk-is

    (818) yulek.b@gmail.com, журнал не работает с управляемыми формами…

    Reply
  98. user640793_kuhnovec

    (819) 1с 8.3. УНФ 1.6.5.52 тоже не открывается через Толстый клиент

    Reply
  99. denis.fetisov

    (82)

    «Замечательные возможности отбора по реквизитам табличной части.»

    Насколько я понимаю только для реквизитов табличной части с типом число.

    Для ссылочных не реализовано.

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

    Журнал очень хороший.

    Спасибо.

    Reply

Leave a Comment

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