Поиск изменившихся объектов в базе 1Сv7.7

11.02.09

Задачи пользователя - Поиск данных

Анализ и сохранение во внешней базе (SQLite) списка измененых документов и справочников. Полезна при синхронизации различных баз 1Cv77

Скачать файлы

Наименование Файл Версия Размер
Изменения_В_БД.ert
.1234191755 114,00Kb
93
.1234191755 114,00Kb 93 Скачать

Данная обработка анализирует столбец "штамп" DBF файлов справочников и журнала документов. В данном столбце содержится версия объекта, которая меняется, даже при программном изменении объекта. Эти данные регистрируются в SQLite базе. В дальнейшем проводится сравнение текущего состояния базы с базой SQLite. И изменения сохраняются на текущуюдату(). В обработке есть функция Получить_ТЗ_Изменений которая возвращает ТЗ с изменившимися объектами. Можно сделать отбор по видам справочников, документы по ДатамДок.

Необходима компонета 1SQLite.

См. также

Универсальная обработка навигации по метаданным 1С:Предприятия 7.7 для пользователя (навигатор - органайзер открывает любые объекты в режиме 1С:Предприятия)

Поиск данных Платформа 1С v7.7 Абонемент ($m)

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

1 стартмани

09.10.2021    4876    0    ksnik    1    

6

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

Поиск данных Чистка данных Логистика, склад и ТМЦ Оперативный учет 7.7 1С:Торговля и склад 7.7 Управленческий учет Абонемент ($m)

Простая и удобная обработка предназначена для поиска и исправления задублированных (повторяющихся) номенклатурных штрихкодов справочника Единицы. Также она даёт возможность посмотреть номенклатурные остатки. Полезна в случаях, когда номенклатура сопоставляется по штрихкоду с другими внешними источниками, а именно с модулем "Обмент ГИСМТ".

1 стартмани

19.11.2020    7644    1    Kuzya_brаtsk    4    

8

Вычленение из строки с набором букв и цифр номера сотового телефона

Поиск данных Платформа 1С v7.7 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv7 Россия Абонемент ($m)

Для 1с77 ТиС 9.2 отчет - выборка всех сотовых телефонов из справочника контрагенты для передачи в СМС рассылку. Для 1с8 Обработка с алгоритмом распознавания номера телефона из строки.

1 стартмани

20.03.2020    5315    5    AlexHelmer    1    

2

Поиск дублей в любом справочнике для 1С 7.7

Поиск данных Платформа 1С v7.7 Конфигурации 1cv7 Россия Абонемент ($m)

Внешняя обработка предназначена для поиска и подробного анализа дублей.

2 стартмани

29.04.2015    18814    52    Pirat-37    1    

0

Поиск автозапчастей по каталожному номеру

WEB-интеграция Поиск данных Платформа 1С v7.7 1С:Торговля и склад 7.7 Автомобили, автосервисы Абонемент ($m)

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

1 стартмани

26.01.2015    14921    11    kras_71    6    

2

Поиск контрагентов по списку ИНН, переноса в группу и формирования оборотов

Поиск данных Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 Абонемент ($m)

Поиск контрагентов по списку ИНН, переноса в группу и формирования оборотов по счетам с субконто "Контрагенты"

10 стартмани

16.08.2014    16962    2    GSoft    1    

1

Контекстный поиск в 7.7

Поиск данных Платформа 1С v7.7 Конфигурации 1cv7 Бесплатно (free)

Процедура контекстного поиска в журнале документов.

18.04.2014    11318    cushe    3    

5

Быстрый умный поиск с выпадающим списком

Поиск данных Платформа 1С v7.7 Абонемент ($m)

Обработка + консольная утилита (exe). Работает с использованием FormEx.dll (Алексей Фёдоров aka АЛьФ), strmatch (Ракунов Александр aka skorp) и 1sqlite (Александр Орефков). Выполняет быстрый нечеткий поиск по справочнику (по умолчанию - номенклатуры) с выводом наиболее похожих позиций в выпадающий список. Работает на 1с 7.7. Тестировалось на server 2003 в терминалах, в файловой БД. Предполагаемые достоинства: пример (более) «адекватного» (по меркам автора на данный момент) поведения поисковой строки (реализовано при помощи консольной утилиты, работающей через winapi – исходники прилагаются (писалось в lazarus)) и удобной навигации по списку, во время ввода. Является, скорее, примером для реализаций собственных адаптированных поисковых решений.

1 стартмани

30.12.2013    21963    34    Jill    13    

12
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. JohnyDeath 301 12.02.09 10:08 Сейчас в теме
Звучит красиво. Ща попробуем
7. JohnyDeath 301 12.02.09 10:26 Сейчас в теме
Тоже сейчас бегло просматриваю. Практически сразу меня смутили строчки:
Код
// Создаем временную таблицу журнала документов
   ЗапросВрт      = базаДанных.НовыйЗапрос();
   Если ЕстьТакаяТаблица(базаДанных,"ДокЖурналВирт") <> 0 Тогда
      ЗапросВрт.ВыполнитьЗапрос("DROP table ДокЖурналВирт");
   КонецЕсли;
   ЗапросВрт.ВыполнитьЗапрос("create virtual table ДокЖурналВирт using dbeng(_1С.JOURN)");
   
   // Создаем виртуальную таблицу журнала документов чтобы не мешать в транзакции народу
   Если ЕстьТакаяТаблица(базаДанных,"ДокЖурналВрем") <> 0 Тогда
      ЗапросВрт.ВыполнитьЗапрос("DROP table ДокЖурналВрем");
   КонецЕсли;

   запСоздЖурнала   = базаДанных.НовыйЗапрос();
   запСоздЖурнала.ВыполнятьВТранзакции =1;
   запСоздЖурнала.ВыполнитьЗапрос("Create table ДокЖурналВрем (
   |idjournal TEXT,
   |iddoc TEXT,
   |iddocdef TEXT,
   |date TEXT,
   |docno TEXT,
   |verstamp TEXT,
   |ISMARK VARCHAR(1))");
Показать полностью

Я так понимаю здесь: таблица удаляется, если была, потом создаётся, потом опять удаляется, потом опять создаётся.
Или я ещё не проснулся?

П.С.
1) В 1sqlite уже давно есть автоподключение таблиц, поэтому "ЗапросВрт.ВыполнитьЗапрос("create virtual table ДокЖурналВирт using dbeng(_1С.JOURN)");" можно и не писАть.
2) в sqlite есть такое: "drop table IF EXISTS" и "creat table IF EXISTS"
2. JohnyDeath 301 12.02.09 10:17 Сейчас в теме
Автор, может опишешь вкратце как ей пользоваться и за что отвечают каждый элемент формы.
4. Ёпрст 1063 12.02.09 10:22 Сейчас в теме
(2) при беглом просмотре, на сколько я понял, делается "слепок" базы и при повторном запросе сравнивается "слепок" с тем что есть сейчас...
и если надо, "слепок" обновляется текущими данными...

Могу и ошибаться :)
3. Ёпрст 1063 12.02.09 10:20 Сейчас в теме
запСоздЖурнала.ВыполнятьВТранзакции =1;
{ИЗМЕНЕНИЯ_В_БД.ERT(96)}: Поле агрегатного объекта не обнаружено (ВыполнятьВТранзакции)
запросСправочников.ВыполнитьЗапрос(ТекстЗапроса,тзСправочники,2);
{ИЗМЕНЕНИЯ_В_БД.ERT(407)}: Слишком много параметров передано при вызове функции/процедуры объекта
5. JohnyDeath 301 12.02.09 10:22 Сейчас в теме
(3) по первой ошибке - качай последнюю версию 1sqlite
6. Ёпрст 1063 12.02.09 10:23 Сейчас в теме
(5) спсб. ща попробуем, после того как hogik поправил dbeng32 забил на sqllite ...
8. JohnyDeath 301 12.02.09 10:27 Сейчас в теме
10. Ёпрст 1063 12.02.09 10:49 Сейчас в теме
(8) пытаюсь, хотя что-то на sqllite осталось.. в общем зоопарк еще тот..
:)
9. JohnyDeath 301 12.02.09 10:37 Сейчас в теме
Всё-таки описания очень не хватает (

По поводу фильтра по виду документа. Примерно так:
Код
WHERE Журнал.iddocdef = :ВидДокумента.ТвойВидДокумента_Например_Реализация
Показать полностью
11. фокусник 24 12.02.09 16:17 Сейчас в теме
(JohnyDeath) 7 По пункту 2) в sqlite есть такое: "drop table IF EXISTS" и "creat table IF EXISTS"
Знаю что есть. Но почему то у меня выдает ошибку при работе с виртуальной таблицей.
12. фокусник 24 12.02.09 16:28 Сейчас в теме
По поводу описания.
В обработке есть функция Получить_ТЗ_Изменений(), параметры передаваемые в которую являются реквизитами формы. Но это так сказать в виде примера.

Вызов функции создает внешнюю БД. В неё записываются в виде таблиц все справочники и отдельно журнал документов. В базе 1С в ДБФ файлах соответствующих таблиц есть столбец "VERSTAMP", в котором при практически любом изменении записывается номер версии соответствующего объекта. Не записывается если специально использовать команду из УРБД "РегистрацияИзменений". Эти версии записываются в отдельные таблицы подчиненые таблицам справочников на соответствующую дату. В дальнейшем идет анализ сравнения текущего сотояния базы с этими данными. Им ожно получит список измененых объектов за интервал времени. Возможны отборы по виду справочников и по периоду документов.
13. фокусник 24 12.02.09 16:29 Сейчас в теме
Назначение реквизитов формы дано в описании функции Получить_ТЗ_Изменений()
14. CheBurator 3119 15.03.10 17:23 Сейчас в теме
ай маладца! то что мне надо!
Оставьте свое сообщение