Вход | Регистрация


1С:Предприятие ::

Метки: 

Проверка при загрузке в конвертация данных

Я
   Oleg102
 
10.04.14 - 15:36
Всем привет. Подскажите пожалуйста как сделать проверку в конвертации данных при загрузке. Мне нужно сделать так, что бы при загрузке документа "Поступление Товаров и услуг" стояла проверка если стоит галочка в "Предъявление счет фактуры" то тогда данный документ не изменять или пропустить при загрузке. Что то не соображу немного.

Сейчас такое накалякал, явно не работает
Если ТипЗнч(ДокументСсылка.ПоступлениеТоваровУслуг) = Параметры.ПредъявленСчетФактура = Булево(Истина) Тогда
    Отказ = Истина;
    Предупреждение("Существует счет фактура");
КонецЕсли;
 
  Рекламное место пустует
   Wobland
 
1 - 10.04.14 - 15:37
Отказ=Источник.Предъявлен?
   MaxS
 
2 - 10.04.14 - 15:40
где-то в после загрузки:
Отказ = ?(Объект.Предъявлен,Истина,Отказ);
   Wobland
 
3 - 10.04.14 - 15:40
а зачем их вообще выгружать?
   Wobland
 
4 - 10.04.14 - 15:41
(2) ещё бы если написал
   Oleg102
 
5 - 10.04.14 - 15:45
(3) Вообщем бухгалтерия когда проверяет документ если все нормально, она ставит галочку предъявлена счет фактура и на основании этого документа формирует счет фактуру, которую изменять в дальнейшем не нужно. Надо сделать такую проверку при загрузке данных, а как правильно написать в конвертации данных не знаю. Что то не получается
   Wobland
 
6 - 10.04.14 - 15:59
если у поступления галка стоит, то его с/ф не выгружаем. так?
   Oleg102
 
7 - 10.04.14 - 16:04
(6) да. только на "Выгружаем" а не "Загружаем" уже в базу приемник
   Wobland
 
8 - 10.04.14 - 16:05
ну и на кой ляд нужна лишняя информация вфайле обмена?
   Oleg102
 
9 - 10.04.14 - 16:05
Не могу сослаться на документ, а потом его объект и параметр.
   Oleg102
 
10 - 10.04.14 - 16:05
Начало загрузки:   10.04.2014 18:02:05

Ошибка в обработчике события ПередЗагрузкойДанных (конвертация)
    Обработчик             =  ПередЗагрузкойДанных (конвертация)
    ОписаниеОшибки         =  Поле объекта не обнаружено (ДокументСсылка)
    ПозицияМодуля          =  (1)
    КодСообщения           =  22
 
  Рекламное место пустует
   Oleg102
 
11 - 10.04.14 - 16:06
(8) в смысле?
   Wobland
 
12 - 10.04.14 - 16:07
(11) в прямом. на зачем в файл писать то, что не будет нужно?
   Oleg102
 
13 - 10.04.14 - 16:08
(12) а как тогда это реализовать?
   Oleg102
 
14 - 10.04.14 - 16:08
(12) как еще при загрузке сделать такую проверку можно?
   Wobland
 
15 - 10.04.14 - 16:09
(13) перед выгрузкой с/ф Отказ=Предъявлено();
а в Предъявлено() ищешь галку у его поступления
   Oleg102
 
16 - 10.04.14 - 16:12
(15) Не что то типа этого?

Отказ = ?(Объект.Предъявлен(ДокументСсылка.ПоступлениеТоваровУслуг = Параметры.ПредъявленСчетФактура),Истина,Отказ);
   Oleg102
 
17 - 10.04.14 - 16:14
Отказ = ?(Предъявлен(ДокументСсылка.ПоступлениеТоваровУслуг = Параметры.ПредъявленСчетФактура),Истина,Отказ);
   Oleg102
 
18 - 10.04.14 - 16:16
Блин что то не хочет
   Wobland
 
19 - 10.04.14 - 16:39
Отказ = Источник.ПоступлениеТоваровУслугПредъявленСчетФактура?
   MaxS
 
20 - 10.04.14 - 18:41
(4) Отказ может быть ранее кем-нибудь уже установлен в Истина, на каком основании его можно переопределять значением реквизита документа? т.е. игнорировать ранее установленное значение.

(17) В после загрузки  нужно смотреть на Ссылку
например так:

Отказ = ?(Ссылка.Проведен И Ссылка.Предъявлен И Параметры.ПредъявленСчетФактура,Истина,Отказ);
   Wobland
 
21 - 10.04.14 - 18:55
(20) расскажи прикол конструкции ?(ЧтоТо, Истина, Ложь)
   MaxS
 
22 - 10.04.14 - 19:13
(21) Найди одно отличие
Отказ = ?(ЧтоТо, Истина, Ложь);
Отказ = ?(ЧтоТо, Истина, Отказ);
   Wobland
 
23 - 10.04.14 - 19:17
(22) ага, нашёл
   Wobland
 
24 - 10.04.14 - 19:21
конструкция симпатичная. интересно, сработаетв полном одиночестве?
   Aprobator
 
25 - 10.04.14 - 20:36
(0) бредятина какая. Всего то и надо в ПКО, где источник ПТУ прописать в событии ПриВыгрузке: НеЗамещатьОбъектПриЗагрузке = Источник.ПредъявленСчетФактура; - это для случая - не изменять при загрузке. Если не выгружать то аналогично Отказ = ...
   Wobland
 
26 - 10.04.14 - 20:37
(25) ему счёт-фактуру не надо выгружать, а не источник
   Aprobator
 
27 - 10.04.14 - 20:43
(26) ну для счет фактуры по аналогии. Если сделан на основании ПТУ - принцип примерно тот же самый.
   MaxS
 
28 - 10.04.14 - 21:02
(25) судя по вопросу в (0) нужен анализ существующего документа в базе приемнике. Если там стоит флаг, то этот документ не менять.
   Oleg102
 
29 - 11.04.14 - 06:40
(28) Все верно. Если стоит галка то этот документ менять не нужно
   Oleg102
 
30 - 11.04.14 - 07:08
Ошибка при загрузке данных: {Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1620)}: Ошибка в обработчике события ПередЗагрузкойОбъекта
    ИмяПКО                 =  ПоступлениеТоваровУслуг
    ТипОбъекта             =  Поступление товаров и услуг
    Обработчик             =  ПередЗагрузкойОбъекта
    ОписаниеОшибки         =  Поле объекта не обнаружено (ПредъявленСчетФактура)
    ПозицияМодуля          =  (1)
    КодСообщения           =  19

Окончание загрузки: 11.04.2014 9:04:00
   Oleg102
 
31 - 11.04.14 - 07:10
Что за фигня то такая((
   Oleg102
 
32 - 11.04.14 - 07:55
Если не ЗначениеЗаполнено("ПредъявленСчетФактура") = Истина Тогда
        
   Отказ = Истина;
            
КонецЕсли;
   Oleg102
 
33 - 11.04.14 - 07:56
Подскажите как правильно сослаться на тип "Булево" "Параметры..." и "Объект" ошибка постоянно.
 
  Рекламное место пустует
   MaxS
 
34 - 11.04.14 - 08:02
Есть же пример в (20).
И в обработчике перед загрузкой, по моему нельзя увидеть документ приемника.  В после загрузки документ уже найден и находится в состоянии перед записью. В нашем распоряжении есть Объект с данными из источника и Ссылка с данными из приемника.

Если в параметрах есть реквизит ПередЗагрузкойОбъекта, то вроде бы так и обращаться 
Если Параметры.ПередЗагрузкойОбъекта=Истина Тогда
   MaxS
 
35 - 11.04.14 - 08:12
(34) параметр ПредъявленСчетФактура  т.е. ))
и ещё есть справка по обработчикам...
   Oleg102
 
36 - 11.04.14 - 08:21
(35)Это же получается не параметр? Так ведь. Он мне ругается что не является ни параметром ни объектом. А кто тогда он блин. Сейчас так сделал ошибок нет но и не работает нифига при этом

Если Параметры.Свойство("ПредъявленСчетФактура") = Истина Тогда
    Отказ = Истина;
КонецЕсли;
   Oleg102
 
37 - 11.04.14 - 08:22
после загрузке ставлю
   Oleg102
 
38 - 11.04.14 - 08:23
Не хочет ни как что бы проверялась стоит галочка или нет
   MaxS
 
39 - 11.04.14 - 08:38
Похоже нужно выяснять с азов. Что такое параметры в КД, что такое реквизиты в метаданных, как проверить наличие имени и значения переменной в структуре...

вот ещё пример можно попробовать:

Отказ = ?(Ссылка.ПредъявленСчетФактура,Истина,Отказ);
   Oleg102
 
40 - 11.04.14 - 08:43
(39) Заработало. Представляете. Спасибо Вам большое. Сейчас почитаю для себя что Вы мне написали благодарю безумно)))



Список тем форума
  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует