• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Не формируются документы с помощью Таблицы Значений (1С 7.7)

  • Автор темы Автор темы BBDragon
  • Дата начала Дата начала
Хорошо, что работает, плохо, что все-таки заупрямился и написал-таки избыточный код (с новыми колонками 40 раз) :rolleyes:
 
Хорошо, что работает, плохо, что все-таки заупрямился и написал-таки избыточный код (с новыми колонками 40 раз) :rolleyes:
Да не работает она по-другому, я бы и сам был бы рад написать одну строку, а не плодить 40. Спасибо еще раз за науку :)
 
Да не работает она по-другому, я бы и сам был бы рад написать одну строку, а не плодить 40.
Лучше сорок раз по разу, чем ни разу сорок раз ? :rolleyes:

Добавлено: И все же не могу понять, почему обработка работает на моей базе, а на твоей - нет.
Может, проверишь еще разок ?
 

Вложения

Добавлено: И все же не могу понять, почему обработка работает на моей базе, а на твоей - нет.
Может, проверишь еще разок ?
Попробовал еще раз вашу обработку - она не работает, просто создает 90 пустых документов. Правильно работает обработка лишь при построчном заполнении данных, именно так я и вынужден был сделать.

Лучше сорок раз по разу, чем ни разу сорок раз ? :)

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

Попутно возникло 2 небольших вопросика. Как сделать, чтобы по табличной части документа можно было передвигаться с помощью кн. TAB и окошко сдвигалось? В данный момент курсор передвигается и уходит за границу экрана, а сам документ не сдвигается и большинство полей документа (а их 45!) не видны.
И последнее, подскажите, пожалуйста, как прикреплять файлы к сообщениям (как вы прикрепили файл с обработкой к своему последнему сообщению) :rolleyes:
 
И последнее, подскажите, пожалуйста, как прикреплять файлы к сообщениям
Используй расширенную форму (средняя кнопка внизу)

Если не секрет, поделись реальной базой (в твоей пустой я сам документы создавал), а то крыша поедет - я-то вижу, что у меня все документы прекрасно заполняются.
Надо, наконец, ПОСТАВИТЬ ТОЧКУ В ЭТОМ ДЕЛЕ
 
Используй расширенную форму (средняя кнопка внизу)

Если не секрет, поделись реальной базой (в твоей пустой я сам документы создавал), а то крыша поедет - я-то вижу, что у меня все документы прекрасно заполняются.
Надо, наконец, ПОСТАВИТЬ ТОЧКУ В ЭТОМ ДЕЛЕ
Спасибо! Я залил базу, ссылку скинул в личку.
Проверь, пожалуйста, работу программы на тестовом файле (прикреплен)

Не подскажешь ли как сделать, чтобы по табличной части документа можно было передвигаться с помощью кн. TAB и окошко сдвигалось? В данный момент курсор передвигается и уходит за границу экрана, а сам документ не сдвигается и большинство полей документа (а их 45!) не видны :)

P.S. Вчера не успел вовремя ответить, общались по душам с главным бухгалтером :)
 

Вложения

Прилагаю обработку, в которой все работает на реальной базе.
Но !
Для полностью корректной работы НЕОБХОДИМО синхронизировать реквизиты ТЧ
документов РеестрСчетовВходящийЛПУ и РеестрСчетовИсходящийВТФОМС, а именно :
реквизиту ФамилияПациента в РеестрСчетовИсходящийВТФОМС назначить тип Справочник.ПациентыЛПУ, иначе
прилагаемая обработка будет назначать СТРОКОВОЙ переменной значение ЭЛЕМЕНТА справочника :)
а в документе РеестрСчетовВходящийЛПУ на колонку ФамилияПациента повесить процедуру типа той, что есть
в РеестрСчетовИсходящийВТФОМС : ПриИзмененииФамилии(), дабы избежать ручного заполнения лишних реквизитов




Добавлено: И еще маленькое замечание : не стоит давать реквизитам имена, совпадающие с зарезервированными словами встроенного языка (я про ПолныйКод в справочнике КодыТерриторий),
иногда это может привести к плачевным последствиям
 

Вложения

Уважаемый vbs, учел все ваши абсолютно справедливые замечания и внес необходимые исправления в программу! Теперь обработка действительно работает, но почему-то все пациенты задваиваются :rolleyes:
Попробую сейчас сам найти ошибку, ну и внесу ряд небольших элементарных дополнений (необходимо в шапке документов указывать начальный и конечный периоды, код территории, правильно вывести порядковый номер и т.д.).
Кстати, в своей обработке обнаружил ошибку - она не выдергивает первого пациента из документа :o

Добавлено: все, исправил до конца вашу обработку. Она теперь работает чуть медленней, зато абсолютно правильно :blush:
P.S. Можно еще немного оптимизировать ее, я исправил ее простейшим образом :)
 

Вложения

но почему-то все пациенты задваиваются
1. РеестрСчетовВходящийЛПУ проверь - внутри них в соседних датах дубли есть, меня это тоже удивило
2. Если уже не нужно включать пациента в ОТЗ по текущему ОКАТО, проще проверять его наличие в ОТЗ перед созданием новой строки :
Если ОТЗ.НайтиЗначение(...) = 0 тогда
//включать
 
1. РеестрСчетовВходящийЛПУ проверь - внутри них в соседних датах дубли есть, меня это тоже удивило
2. Если уже не нужно включать пациента в ОТЗ по текущему ОКАТО, проще проверять его наличие в ОТЗ перед созданием новой строки :
Если ОТЗ.НайтиЗначение(...) = 0 тогда
//включать
1. Проверено, дублей нет.
2. Не понял этот пункт, разве я вносил такие изменения? :gifts:
 
Я имел в виду примерно следующее (если я правильно понял алгоритм) :
Если TrimR(ТЗ.ОкатоСтрахования) = ВыбранноеОкато Тогда
ю = "";
Если ОТЗ.Найти Значение(ТЗ.ФамилияПациента,ю,"ФамилияПациента") = 0 тогда
//будут включаться только новые пациенты
ОТЗ.НоваяСтрока();
N = N + 1;
для m = 1 по ТЗ.КоличествоКолонок() цикл
ОТЗ.УстановитьЗначение(N,m,ТЗ.ПолучитьЗначение(k,m));
КонецЦикла;
КонецЕсли;
КонецЕсли;
 
vbs, теперь я вас понял :)
Вообще голова уже идет кругом - сначала пациенты задваивались, потом (после того как я изменил обработку) стали выгружаться нормально, потом стала выгружаться половина :(
Вернул вашу обработку к начальной версии, почистил базу, удалил все документы, загрузил и сформировал все по-новой - все работает правильно!!! :gifts:
Я вообще в шоке, почему так происходит? :what?:

P.S. Что касается вашего предложения по проверке наличия пациента в записи, то оно неосуществимо, ибо один и тот же пациент может быть записан несколько раз (если он обращался в разные дни), либо даже в один день если он обращался к разным специалистам
 
Я вообще в шоке, почему так происходит?
Программа спроектирована просто безобразно. Переделать ее к удобоваримому виду заняло бы (у меня) часа 3-4.
Если не лень, это надо сделать.
И заказчик пусть бабки отстегнет :gifts:
 
Проектировал программу не я, сам тоже не стал особо менять, не до этого. В программу нужно будет внести еще много изменений, то о чем я упоминал - это лишь малая часть. Так что за 3-4 часа ее точно не доделать, даже такому профессионалу как вы :gifts:
 
Проектировал программу не я, сам тоже не стал особо менять, не до этого
Это я уже понял из первых постов. Так что, ничего личного. Просто удивительно, как некто написал оригинальную конфигурацию, мало понимая предметную область
Переделать ее к удобоваримому виду заняло бы (у меня) часа 3-4.
Я имел в виду только то, что написал. Удобоваримый вид - не значит самый оптимальный.
А во временнЫх оценках я очень редко ошибаюсь (особенно при оценке снизу), когда уже погрузился в программу. Иначе себе дороже - похвастаешься вот, а потом за свой счет за базар отвечать
 
Это я уже понял из первых постов. Так что, ничего личного. Просто удивительно, как некто написал оригинальную конфигурацию, мало понимая предметную область

Я имел в виду только то, что написал. Удобоваримый вид - не значит самый оптимальный.
А во временнЫх оценках я очень редко ошибаюсь (особенно при оценке снизу), когда уже погрузился в программу. Иначе себе дороже - похвастаешься вот, а потом за свой счет за базар отвечать
Понятно.. Насколько я знаю разработкой первоначальной версии программы занималась целая фирма и потратили они на нее около года. Правда их итоговая версия фактически не работала, мой предшественник еще несколько месяцев выправлял там ошибки :)
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab