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

Автор Тема: ТекСтрокаТовары. Объясните, пожалуйста, начинающему программисту)  (Прочитано 3958 раз)

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

Оффлайн Sv_Graal

  • *
  • Сообщений: 5
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-10-10
  • Сайт: 
  • Профессия: Ученик 1С
Почему-то в синтакс-помощнике не удается найти, что такое ТекСтрокаТовары вот в таком коде:

Процедура ОбработкаПроведения(Отказ, Режим)

   // регистр Проводки
   Движения.Проводки.Записывать = Истина;
   Для Каждого ТекСтрокаТовары Из Товары Цикл
      Движение = Движения.Проводки.Добавить();
      Движение.СчетДт = ТекСтрокаТовары.СчетУчета;
      Если ТекСтрокаТовары.СчетУчета.УчетПоПодразделениям Тогда
         Движение.ПодразделениеДт = Подразделения;
      КонецЕсли;
      Движение.СчетКт = ПланыСчетов.Бухгалтерский.Поставщики;
      Движение.ПодразделениеКт = ЭтотОбъект.Подразделения;
      Движение.Период = Дата;
      Движение.Сумма = ТекСтрокаТовары.Сумма;
      Движение.Организация = Организация;
   КонецЦикла;

КонецПроцедуры

Если это переменная, то почему она не объявлена ни явно, ни неявно?..
Если это какая-то стандартная конструкция языка, почему ее нет в помощнике?..
Я сейчас склоняюсь к мысли, что это переменная, в которую попадает структура, содержащая в себе данные строки "под курсором". Поправьте, пожалуйста, меня, если я не права. Это какая-то "системная переменная"? Такие вообще бывают?

PLEASE, HELP!  :lol:


Оффлайн Dethmontt

  • Денис
  • Модератор
  • *****
  • Сообщений: 2861
  • РЕПУТАЦИЯ: 548
  • КПД: 19%
  • Адын Эс
  • Регистрация: 2010-11-01
  • Сайт: 
  • Профессия: Программист 1С
Вы правы это переменная
В СП это есть!


Для каждого (For each)
Синтаксис:
    Для каждого <Имя переменной 1> Из <Имя переменной 2> Цикл
    // Операторы
    [Прервать;]
    // Операторы
    [Продолжить;]
    // Операторы
    КонецЦикла;

Англоязычный синтаксис:
    For each <Имя переменной 1> In <Имя переменной 2> Do
    // Операторы
    [Break;]
    // Операторы
    [Continue;]
    // Операторы
    EndDo;

Параметры:
    <Имя переменной 1>
    Переменная, которой при каждом повторении цикла присваивается значение очередного элемента коллекции.


    Из
    Синтаксическая связка для параметра <Имя переменной 2>.

    <Имя переменной 2>
    Переменная или выражение, предоставляющее коллекцию. Элементы этой
коллекции будут присваиваться параметру <Имя переменной 1>.


    Цикл
    Операторы, следующие за ключевым словом Цикл выполняются, пока значение переменной <Имя переменной> меньше значения <Выражение 2>.

    // Операторы
    Исполняемый оператор или последовательность таких операторов.

    Прервать
    Позволяет прервать выполнение цикла в любой точке. После выполнение этого оператора управление передается оператору, следующему за ключевым словом КонецЦикла.

    Продолжить
    Немедленно передает управление в начало цикла, где производится вычисление и проверка условий выполнения цикла. Операторы, следующие в теле цикла за ним, на данной итерации обхода не выполняются.

    КонецЦикла
    Ключевое слово, которое завершает структуру оператора цикла.

Описание:
Оператор цикла Для каждого предназначен для циклического обхода коллекций значений. При каждой итерации цикла возвращается новый элемент коллекции. Обход осуществляется до тех пор, пока не будут перебраны все элементы коллекции.
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Оффлайн Dethmontt

  • Денис
  • Модератор
  • *****
  • Сообщений: 2861
  • РЕПУТАЦИЯ: 548
  • КПД: 19%
  • Адын Эс
  • Регистрация: 2010-11-01
  • Сайт: 
  • Профессия: Программист 1С
Тип переменной1 будет зависеть от типа переменной2

Например если мы перебираем Табличную часть
То переменная1 будет принимать значения строк Табличной части (Тип строка табличной части)

Если мы будем перебирать Массив то переменная будет принимать значения массива (тип значения массива, может быть вложенный массив или строка и т.д.)

(У каждого элемента коллекции свои свойства и методы про которые можно прочитать в Синтаксис помощнике)
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Оффлайн Sv_Graal

  • *
  • Сообщений: 5
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-10-10
  • Сайт: 
  • Профессия: Ученик 1С
Ага! Спасибо большое за ответ)))

То есть существует еще один способ неявно объявить переменную, помимо ее указания в левой части оператора присваивания...
Для меня диковато, что они появляются в самых неожиданных местах :bleh:

И все-таки это не системная переменная, они есть и, вроде бы, начинаются с нижнего подчеркивания. Это я неловко выразилась.
Pardon))

Оффлайн Dethmontt

  • Денис
  • Модератор
  • *****
  • Сообщений: 2861
  • РЕПУТАЦИЯ: 548
  • КПД: 19%
  • Адын Эс
  • Регистрация: 2010-11-01
  • Сайт: 
  • Профессия: Программист 1С
Кто вам мешает объявит ее(переменную1) ЯВНО?
Процедура МояПроцедура()
Перем ИнтераторЦикла;

Таблица = Новый ТаблицаЗначений;
Таблица.Колонки.Добавить("Колонка1");
СтрокаТаблицы = Таблица.Добавить();
СтрокаТаблицы.Колонка1 = "тест";

Для каждого ИнтераторЦикла Из Таблица Цикл
    Сообщить(ИнтераторЦикла.Колонка1);
КонецЦикла;
КонецПроцедуры

Такой способ обхода коллекций есть во многих языках....
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Оффлайн Sv_Graal

  • *
  • Сообщений: 5
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-10-10
  • Сайт: 
  • Профессия: Ученик 1С
Все, вроде бы разобралась. Это переменная, генерируемая платформой при создании табличной части)) Она ведь вываливается в менюшке при наборе кода и присутствует во всяких конструкторах.
Интересовала именно сама ТекСтрокаТовары
Вообще эта платформа такая самостоятельная) Мне с моим стремлением до донца докопаться, похоже, надо идти до конца, т.е. до эксперта, чтобы успокоиться
Спасибо за подсказки! :ooifh:


Теги:
 

Подскажите пожалуйста код проверки заполнения реквизита док или реквизита ТЧ

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

Ответов: 5
Просмотров: 1134
Последний ответ 22 Июл 2016, 16:17
от Fedor_Safonchik
Здраствуйте! Помогите пожалуйста мне ! - "Очёт Валовая Прибыль"

Автор lipvРаздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 2197
Последний ответ 05 Июн 2014, 16:30
от ADMBD
Помогите пожалуйста сделать итог по колонке "начислено"

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

Ответов: 1
Просмотров: 2422
Последний ответ 05 Сен 2011, 10:14
от has
Перешли на 8УТ с ТИСа, работаем первую неделю. Есть много вопросов. На те, что не нашел ответы в интернете подскажите пожалуйста, опытом поделитесь))

Автор KofffeРаздел Пользователям "1С - Предприятие 8"

Ответов: 4
Просмотров: 1377
Последний ответ 02 Ноя 2015, 12:34
от AIFrame
Всем привет, подскажите пожалуйста как загрузить в БП 3.0 стандартные справочники(например виды номенклатур), буду премного благодарен

Автор DemlifeРаздел Пользователям "1С - Предприятие 8"

Ответов: 0
Просмотров: 841
Последний ответ 21 Мар 2016, 11:37
от Demlife

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
154 Сообщений
alex0402
67 Сообщений
oleg-x
56 Сообщений
AIFrame AIFrame
50 Сообщений
buketov.av buketov.av
47 Сообщений
wise wise
41 Сообщений
ilyay ilyay
39 Сообщений
Анюта17
33 Сообщений
Alter
32 Сообщений
trialex3
30 Сообщений

* Кто онлайн

  • Точка Гостей: 144
  • Точка Скрытых: 0
  • Точка Пользователей: 0

Нет пользователей онлайн.

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal