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

1С:Предприятие :: 1С:Предприятие 8 общая

Сравнение объекта в документе с регистром сведений

Сравнение объекта в документе с регистром сведений
Я
   cdsven
 
19.11.18 - 09:06
Добрый день, мне поставили таю задачу нужно сравнить запись из объекта на форме документа с записью из регистра сведений, в случае несовпадения вывести ошибку и не проводить документ. Второй день борюсь не как не могу справится.

&НаСервере
Процедура ПередЗаписью(Отказ, ТекущийОбъект, ПараметрыЗаписи)
 Запрос = Новый Запрос;
          Запрос.Текст = ("ВЫБРАТЬ
                          |    МестаВыплатыЗарплатыСотрудников.МестоВыплаты КАК МестоВыплаты,
                          |    ВедомостьНаВыплатуЗарплатыВБанк.ЗарплатныйПроект КАК ЗарплатныйПроект1,
                          |    ЛицевыеСчетаСотрудниковПоЗарплатнымПроектамСрезПоследних.ЗарплатныйПроект КАК ЗарплатныйПроект
                          |ИЗ
                          |    РегистрСведений.МестаВыплатыЗарплатыСотрудников КАК МестаВыплатыЗарплатыСотрудников
                          |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ВедомостьНаВыплатуЗарплатыВБанк КАК ВедомостьНаВыплатуЗарплатыВБанк
                          |            ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЛицевыеСчетаСотрудниковПоЗарплатнымПроектам.СрезПоследних КАК ЛицевыеСчетаСотрудниковПоЗарплатнымПроектамСрезПоследних
                          |            ПО ВедомостьНаВыплатуЗарплатыВБанк.Ссылка = ЛицевыеСчетаСотрудниковПоЗарплатнымПроектамСрезПоследних.ФизическоеЛицо
                          |        ПО (ВедомостьНаВыплатуЗарплатыВБанк.ЗарплатныйПроект = МестаВыплатыЗарплатыСотрудников.ФизическоеЛицо)");
    Выборка = Запрос.Выполнить().Выбрать();
    Выборка.Следующий();            
        Если Выборка.МестоВыплаты <> Объект.ЗарплатныйПроект <> Выборка.ЗарплатныйПроект
            Тогда Сообщить ("Ошибка!");
        Отказ = истина;
    КонецЕсли;
КонецПроцедуры

Будьте добры укажите на мою ошибку. заранее огромное спасибо.
 
 
   Fram
 
1 - 19.11.18 - 09:09
Это что за форма записи такая?
Выборка.МестоВыплаты <> Объект.ЗарплатныйПроект <> Выборка.ЗарплатныйПроект
   cdsven
 
2 - 19.11.18 - 09:10
Пытаюсь сравнить записи.
   Галахад
 
3 - 19.11.18 - 09:11
(0) Наверное надо какие-то конкретные данные сравнивать. И какие-то параметры в запрос передавать, уточняющие.
   Fram
 
4 - 19.11.18 - 09:13
(2) словами объясни что хотел сделать
   Fram
 
5 - 19.11.18 - 09:18
ПО ВедомостьНаВыплатуЗарплатыВБанк.Ссылка = ЛицевыеСчетаСотрудниковПоЗарплатнымПроектамСрезПоследних.ФизическоеЛицо
                          |        ПО (ВедомостьНаВыплатуЗарплатыВБанк.ЗарплатныйПроект = МестаВыплатыЗарплатыСотрудников.ФизическоеЛицо)

это просто шедевр
   cdsven
 
6 - 19.11.18 - 09:23
Имеется 2 регистра сведений.
1) ЛицевыеСчетаСотрудниковПоЗарплатнымПроектамСрезПоледних - сюда заносятся истории изменений зарплатах карт сотрудников, а точнее лицевой счет, зарплатный проект(ВТБ,Газпром,Сбербанк),дата начала действия карты.
2) МестаВЫплатыЗарплатыСотдуников - данный регистр содержит текущий зарплатный проект сотрудников.

и Документ ведомостьнавыплатузарплаты - зарплатная ведомость, там выбираем зарплатный проект, в табличной части заносится лицевой счет.

необходимо что бы при ручном добавлении сотрудника в зарплатную ведомость, выходило сообщений что данная карта не используется. просто если у сотрудника сначало была карта газпром потом втб, в истоири это записывается, и при добавлении сотрудника в ведомость с газпромом он заносится но так как карта уже не используется должно быть предупреждение.
   Fram
 
7 - 19.11.18 - 09:24
(6) классический вопрос. а ты там кем?
   cdsven
 
8 - 19.11.18 - 09:25
(7) начинающим программистом, вот кем
   Fram
 
9 - 19.11.18 - 09:31
(8) а образование есть соответствующее? хотя бы близкое.
   cdsven
 
10 - 19.11.18 - 09:36
(9) есть и даже не близкое, по  по данной специальности
 
 Рекламное место пустует
   Fram
 
11 - 19.11.18 - 09:38
(10) тогда почему в своем коде полную херню пишешь?
   cdsven
 
12 - 19.11.18 - 09:39
(11) я по этому и обратился на форму для того что бы подсказали, зачем задавать глупые вопросы? с 1с знаком мало, поэтому выкручиваюсь как могу
   Fram
 
13 - 19.11.18 - 09:45
(12) надо наверно на доп курсы сходить?
подсказывать по конкретно этому вопросу не вижу смысла. ты ж не в мелочи какой то ошибся, ты ж даже не знаешь синтаксис оператора Если.
а запрос так вообще слепым методом тыка написан
   cdsven
 
14 - 19.11.18 - 09:47
доп курсы денег стоят, поэтому и учусь через форумы и интернет, если вам сложно подсказать и направить в нужное русло зачем, тогда вообще было что то писать
   Fram
 
15 - 19.11.18 - 09:50
(14) ну ты как то лихо начал. попроще задание найди, сильно попроще. например, просто выведи четные числа в окно сообщений или тп
   cdsven
 
16 - 19.11.18 - 09:53
таким уже занимался, сейчас есть конкретная задача, надо которой уже второй день сижу, если вам не сложно будьте добры помочь с ней.

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