Конвертация - загружать только проведенные или уже присутствующие в приемнике #740683


#0 by varyag
Надо чтобы не загружались непроведенные документы если они не были загружены раньше. Сделал алгоритм записи всех документов, который вызывается в "ПослеЗагрузки" объекта: Если Объект.Проведен Тогда Для всех документов отрабатывает нормально, кроме тех, которые выгружаются из счет-фактуры ПКС ДокументОснование таким образом: Такие документы почему-то все равно загружаются в приемник, но заполнен только контрагент.. Не могу вычислить почему выгружаются, может кто подсказать?
#1 by 1С_Fitness
призагрузке так то , после загрузки ты уже загрузил))) если не объект.проведен тогда отказ=истина; конецЕсли;
#2 by 1С_Fitness
твой код неверен полностью
#3 by varyag
Нет. Изучите справку. После загрузки Условия возникновения события Только для платформы V8. Событие выполняется после прочтения и установки атрибутов объекта из файла, но до его записи в информационную базу. Возможна модификация загруженного объекта. Параметры: Отказ - Булево - Если Истина, то объект загружен не будет. Для всех документов отрабатывает, кроме тех, ПКО и Значение которых определены программно
#4 by varyag
В чем он неверен?
#5 by Dilgorp
выгружать то зачем если они не нужны? Да и долго если по каждому объекту отдельно проверять
#6 by 1С_Fitness
это ты изучай справку . у тебя что 7.7 ?
#7 by varyag
У меня немного объектов, выбран оптимальный способ. Выгружать затем что возможно раньше документ был проведен и выгружен в приемник. А потом решили что он не нужен, отменили проведение, тогда надо выгрузить, а при загрузке проверить: Если есть в приемнике - то отменить проведение, если нет - то не загружать
#8 by varyag
У меня 8. Но именно для 8 это событие и отрабатывает. Открой КД и проверь
#9 by 1С_Fitness
нафиг ты их грузишь ? ты не грузи их !
#10 by 1С_Fitness
Событие выполняется после прочтения и установки атрибутов объекта из файла, но до его записи в информационную базу. То что надо ! нет документов , нет проблемы
#11 by varyag
Ты прикалываешься? или троллишь?
#12 by 1С_Fitness
что не так ?
#13 by Dilgorp
тогда не совсем понятно что это за кусок // Если основание "Реализация товаров":     Такие документы почему-то все равно загружаются в приемник, но заполнен только контрагент.. Не могу вычислить почему выгружаются, может кто подсказать? Отладчик то что говорит?
#14 by varyag
я же написал, это из ПСК ДокументОснование ПКО СчетФактура Выданный. Т.е. это из сч-фактуры программно прописано какое ПКО использовать для выгрузки оснований.
#15 by varyag
ПСК=ПКС
#16 by Dilgorp
Если я тебя правильно понял, такие документы выгружаются по ссылке и тебя удивляет почему они выгружаются?
#17 by varyag
Не то чтобы удивляет. Просто хочу понять почему для них не отрабатывает Отказ=Истина в "ПослеЗагрузки"... Т.е. они либо до этого уже в базу записаны(но ОбъектНайден говорит что нет такого объекта), либо уже после, или как то записывается в режиме обмена данными.. не поймц я этого момента
#18 by 1С_Fitness
Ты перед выгрузкой условие напиши, что непроведенные документы не выгружать , запросом получи ТЗ и через коллекцию свойств выполни выгрузку , это в ПКО
#19 by 1С_Fitness
потому что перед загрузкой надо
#20 by SleepyHead
В обработчике "ПКО" преред обработкой отменили что ли?
#21 by Dilgorp
наверно для того чтобы сохранить ссылочную целостность
#22 by Dilgorp
а чтобы не гадать пройдись отладчиком
#23 by 1С_Fitness
ТС уже сто раз говорили , а он справку отправляет читать
#24 by varyag
А для других всех не надо в "ПередЗагрузкой"? Не выгружать непроведенные не выход, говорю же надо проверить их в приемнике
#25 by 1С_Fitness
Базы в одной сети ? можно комом проийтись запросом
#26 by varyag
в одной. Не хочу лишние подключения к базе делать. Хотя возможно так и правильней будет, сначала проверить в приемнике наличие документов. Но это лишнее звено в обмене. Костыль какой то
#27 by varyag
РежимЗаписи здесь причем?
#28 by varyag
Ответь пожалуйста на А для других всех не надо в "ПередЗагрузкой"?
#29 by МимохожийОднако
Если документ не нужен, то его надо удалять. Признак проведения не для этого. ИМХО, думать надо ДО и не ПОСЛЕ. Поэтому не надо грузить лишнее, чтобы потом не удалять.
#30 by varyag
А если документ не нужен и его еще нет в базе приемнике? То он загрузится помеченный на удаление - этого не нужно. Или если он был нужен, выгрузился, а потом стал не нужен, его пометили на удаление - то его нужно выгружать повторно, чтобы в приемнике тоже пометить его. Поэтому на этапе выгрузки и проблемно определить выгружать или нет. А вот при загрузке уже проверки нормально отрабатывают. Но только не для выгружаемых программно: Если ТипЗнч(Источник.ДокументОснование)=Тип("ДокументСсылка.РеализацияТоваров") Тогда
#31 by МимохожийОднако
Если документ помечен на удаление, то его не надо выгружать. А еще лучше - удалить окончательно. Сами себе геморрой делаете, а потом пытаетесь лечить через гланды.
#32 by varyag
Я еще раз говорю, он мог раньше не быть помечен и был выгружен. Да, так у нас тут все работает, через опу. Старые документы могут отменить, распровести, изменить, хоть что сделать.
#33 by varyag
У меня и было раньше так что помеченные или непроведенные не загружались в приемник, если их там нет. Но вот недавно возникла необходимость чтобы ранее выгруженные документы пометить на удаление, для всех документов, кроме выгружаемых программно, я это легко делаю, а с этими проблема.
#34 by Новиков
#35 by varyag
Как победили?
#36 by varyag
или никак?
#37 by Новиков
это бага, причем на последнем релизе, как я уже и писал, воспроизводится на 100%. Более того, в той же ветке я представил простой демо пример, который каждый, при желании может проверить. Кто бы что ни говорил, но это - 100% бага. В той же ветке, если используется механизм онлайн-обмена, есть пруф на то, как можно полечить. Если это не твой случай, а у меня так и было, то да - в ПКО после загрузке, к величайшей засаде, это сделать не получиться. Нужно пересмотреть логику, и попытаться отказаться от этого действа в другом месте.
#38 by Новиков
Или как вариант, просто поправить УОД :) Но на сие можно убить большое количество времени. Исправленный УОД кем-то я пока не нашел.
#39 by varyag
Спасибо, хот ты адекватно ответил. Ссылку на демо видел, но она не работает у меня
#40 by varyag
это она ? ; target="_blank" rel="nofollow" class="extralink">
#41 by varyag
Похоже в твоей ветке она просто криво отображалась))
#42 by Новиков
да эта ссылка. Скачай, сам погляди. Я использовал УОД последний. Я читал партнерку, и там тоже были вбросы, что где-то еще в ранних релизах УОДа, вроде такая ошибка была, потом где-то в середине, ее пофиксили. Я проверял с 2.1.7.1 - бага с этого релиза и далее стабильно воспроизводится. И видимо, коллеги, которые в моей ветке описывались, что бага по фиксина, помнили, что да - где-то в при Брежневе ее правда пофиксили. Но сейчас, она снова с нами! :)
#43 by varyag
Прикольно)
#44 by Новиков
Тоже в Брежневских времен был костыль, как писали, что можно было подюзать переменные самого УОДа, не описанные в хелпе: И когда то это правда работало, потому на партнерке гений 1С, когда то писал что он это подюзывал. Правда вроде в глобальном обработчике самой конвертации. В ПКО после загрузке вся это костыльщина уже не работает, поэтому как бы обложили со всех сторон. Ты проведи сам эксперимент, убедись что это бага, и уже с чистой совестью, думай где до после_загрузки ты можешь отказаться от этой долбанной загрузки.
#45 by varyag
я ради эксперимента пробовал В "ПриЗагрузке" писать отказ = истина, толку мало. Хочу файл выгрузить и сравнить как выгружается сч-фактура, и как выгружается реализация, т.к. с первой таких проблем не возникает. Возможно что-то прояснится. Но это уже не сегодня)
#46 by Новиков
>>В "ПриЗагрузке" писать отказ = истина, толку мало И вот, ты нашел вторую багу, которая плавно вытекает из первой. Да, и это, к великому прискорбию, тоже так. Бага проявляется, как ты уже понял, когда выгрузка идет из ПКС.
#47 by Cyberhawk
дай ссылку на партнерку
#48 by Cyberhawk
+ в смысле на тему из
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С