Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
17 Дек 2017, 03:37
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Проверка существования/заполнения колонки табличного документа?  (Прочитано 6571 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн |R|U|D|E|N

  • ***
  • Сообщений: 217
  • РЕПУТАЦИЯ: 3
  • КПД: 1%
  • Регистрация: 2011-01-09
  • Компания: Virtual-Kernel | KVM | Xen
  • Профессия: Разработчик 1С
Добрый день.

У меня есть документ. В этом документе есть табличная часть. В этой табличной части есть колонка Тип "Число". Это число мне необходимо проводить по регистрам. Так вот когда у меня эта калонка заполненна то все ок. А когда табличная часть вообще пустая(не созданна не одна строка, ну и колонка соответственно)то при проведении вылазит "Значение не является значением объектного типа".

Я хочу чтоб, в случае если не одна строка  в тобличной части не созданна то в регистр заносился "0". А если созданна, то соответственно то что там указанно.

Вот один из пробуемых вариантов:

   
Движения.ПрибыльСВнутреннихРабот.Записывать = Истина;
Для Каждого ТекСтрокаВыполненныеРаботы Из ВыполненныеРаботы Цикл
// регистр ПрибыльСВнутреннихРабот Приход
Движение = Движения.ПрибыльСВнутреннихРабот.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
Движение.Период = Дата;
Движение.Сотрудник = Подрядчикисполнителя;
Движение.СтоимостьРабот = ТекСтрокаВыполненныеРаботы.Стоимость;
//Вот здесь необходимо проверить. Если сумма указанна, то ее мы и проводим
//а если нет, то проводится "0".
Если ТекСтрокаИспользованныеМатериалы.Сумма = Неопределено Тогда
Движение.СтоимостьМатериалов = 0;
Иначе
Движение.СтоимостьМатериалов = ТекСтрокаИспользованныеМатериалы.Сумма;
КонецЕсли;
Движение.Контрагент = Заказчик;
КонецЦикла;

Подскажите пож. как должно быть т.к не выходит у меня...


Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Если ТЧ пустая то в цикл Для Каждого мы не попадаем.

Заключите цикл в условие Если ВыполненныеРаботы.Количество()>0 Тогда

и в Иначе напишите

Движение = Движения.ПрибыльСВнутреннихРабот.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
Движение.Период = Дата;
Движение.Сотрудник = Подрядчикисполнителя;
Движение.СтоимостьРабот = 0;
Движение.СтоимостьМатериалов = 0;
Движение.Контрагент = Заказчик;


Пока копировал Ваш код заметил...
Так у вас 2 ТЧ? Про какую тогда идет речь?
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн |R|U|D|E|N

  • ***
  • Сообщений: 217
  • РЕПУТАЦИЯ: 3
  • КПД: 1%
  • Регистрация: 2011-01-09
  • Компания: Virtual-Kernel | KVM | Xen
  • Профессия: Разработчик 1С
Все мужчины! Принцип понял. Все получилось :D

Вот мой код:

Движения.ПрибыльСВнутреннихРабот.Записывать = Истина;
   Для Каждого ТекСтрокаВыполненныеРаботы Из ВыполненныеРаботы Цикл
      // регистр ПрибыльСВнутреннихРабот Приход
      Движение = Движения.ПрибыльСВнутреннихРабот.Добавить();
      Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
      Движение.Период = Дата;
      Движение.Сотрудник = Подрядчикисполнителя;
      Движение.СтоимостьРабот = ТекСтрокаВыполненныеРаботы.Стоимость;
      //Вот Та строчка которая мне и была нужна!
      Если ИспользованныеМатериалы.Количество() > 0 Тогда
         Движение.СтоимостьМатериалов = ТекСтрокаИспользованныеМатериалы.Сумма;
      Иначе
         Движение.СтоимостьМатериалов = 0;
      КонецЕсли;
      Движение.Контрагент = Заказчик;
   КонецЦикла;

Спасибо Вам за реакцию. Практически как в живую у специалиста спросил :ooifh:

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Вот это подозрительно

ТекСтрокаИспользованныеМатериалы.Сумма;

нигде не заметил где бы ТекСтрокаИспользованныеМатериалы что нибудь присваивалось...

Например ТекСтрокаВыполненныеРаботы - это счетчик цикла...

Скорее уж как sergejK74 написал...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн |R|U|D|E|N

  • ***
  • Сообщений: 217
  • РЕПУТАЦИЯ: 3
  • КПД: 1%
  • Регистрация: 2011-01-09
  • Компания: Virtual-Kernel | KVM | Xen
  • Профессия: Разработчик 1С
Я сам это заметил, только недавно) после того как хорошенько протестировал данный вариант...
действительно странно, но это работает...решил не трогать, т.к у меня пока есть более острые косяки)

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
"действительно странно, но это работает...решил не трогать"

"- Солнце утром встает?
- Да
- Проверял?
- Да
- Несколько раз проверял?
- Да
- Тогда НИЧЕГО НЕ ТРОГАЙ!!"
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.


Теги:
 

Не открывает форму сохраненного документа, открывает форму нового.

Автор EHOTРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 4481
Последний ответ 13 Апр 2012, 23:26
от Vit1501
Автоматическое заполнение табличной части документа из табличной части другого

Автор WillРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 15950
Последний ответ 16 Авг 2012, 12:07
от Will
Заполнение поля табличной части документа из табличной части справочника.

Автор Kurt_WagnerРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 4203
Последний ответ 06 Апр 2015, 20:08
от Kurt_Wagner
Заполнение табличной части документа реквизитами табличной части справочника

Автор kaf_infoРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 639
Последний ответ 10 Май 2017, 20:44
от ilnur75
Добавление сведений в графу "основание" документа "ТОРГ-12"

Автор Ярослав1984Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 7752
Последний ответ 20 Авг 2013, 18:45
от Ярослав1984

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
145 Сообщений
ilyay ilyay
63 Сообщений
AIFrame
50 Сообщений
alex0402
50 Сообщений
andron81_81
44 Сообщений
oleg-x
42 Сообщений
BuhRust
32 Сообщений
MuI_I_Ika MuI_I_Ika
31 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
24 Сообщений

* Кто онлайн

  • Точка Гостей: 125
  • Точка Скрытых: 0
  • Точка Пользователей: 1
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal