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

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

Обход и вычисление табличной части

↓ [Волшебник, 24.05.18 - 13:53]
Обход и вычисление табличной части
Я
   StanislavPrihodko
 
24.05.18 - 08:27
Всем привет. Хотел бы спросить у вас, обход табличной части осуществляется только через цикл Для Каждого Из Цикл и как происходит вычисление количества строк в табличной части, я пишу диплом и прошу у вас совета
 
 
   igorPetrov
 
101 - 24.05.18 - 10:42
(98) фу, толсто уже.
   StanislavPrihodko
 
102 - 24.05.18 - 10:47
(101) Не заходи в эту тему тролль, ты только вреда в этой теме наносишь и мешаешь нормальным людям
   igorPetrov
 
103 - 24.05.18 - 10:49
(102) ты это сам себе говоришь?))
   StanislavPrihodko
 
104 - 24.05.18 - 10:49
(101) Почему администраторы или модераторы не блочат вот такой спам с одними оскорблениями и пустыми словами, которые не помогают?
   igorPetrov
 
105 - 24.05.18 - 10:50
(104) Тебе уже помогли. Дальше думай сам. Готового решения не будет.
   igorPetrov
 
106 - 24.05.18 - 10:51
(104) Оскорбляешь на самом деле ты, отвлекая людей и не желая слушать, что тебе говорят и учиться.
   StanislavPrihodko
 
107 - 24.05.18 - 10:51
Можно правильный пример, как подсчитать строки?
   hhhh
 
108 - 24.05.18 - 10:52
(104) помощь вообще-то тут нахрен никому не нужна. Форум существует для общения. Мы тут общаемся, обсуждаем разные проблемы. Если тебя не устраивает, иди лесом.
   igorPetrov
 
109 - 24.05.18 - 10:53
(107) тебе уже сто раз сказали как, что еще?
   StanislavPrihodko
 
110 - 24.05.18 - 10:54
(108) Одно дело общаться, а другое быть выскочкой и писать во все темы оскорбляя и спамя ненужные свои слова
 
 Рекламное место пустует
   dezss
 
111 - 24.05.18 - 11:02
(107) Количество()
а если нет Объекта, так передай его туда...
   igorPetrov
 
112 - 24.05.18 - 11:04
(110) Вот ты и прокололся)) у тебя только одна тема, о каких всех темах идет речь?
   StanislavPrihodko
 
113 - 24.05.18 - 11:05
(112) Куда не посмотришь, ты везде и спамишь всякую херь, веди дальше монолог сам с собой.
   igorPetrov
 
114 - 24.05.18 - 11:06
(113) врешь)))
   lodger
 
115 - 24.05.18 - 11:06
(110) так у тебя же одна тема на этом аккаунте. палишься.
   StanislavPrihodko
 
116 - 24.05.18 - 11:07
(111) Я же не могу написать Количество(Объект.Уроки)
   igorPetrov
 
117 - 24.05.18 - 11:07
(115) +100)))
   igorPetrov
 
118 - 24.05.18 - 11:07
(116) да он просто издевается, нельзя быть таким дураком )
   StanislavPrihodko
 
119 - 24.05.18 - 11:07
(115) От кого, от чего, вы че несете? У меня одна тема, а сидеть и читать я на форуме не могу что ли? И не могу видеть кого-то слова? Ребят лучше помогите, чем нести чушь какую-то
   igorPetrov
 
120 - 24.05.18 - 11:08
(119) не психуй)
   igorPetrov
 
121 - 24.05.18 - 11:08
(119) тебе уже помогли, повторяю. Все ответы в теме есть.
   StanislavPrihodko
 
122 - 24.05.18 - 11:10
Можно правильный пример, как подсчитать строки? Чтобы вызывалось Количество(), потому что я делаю так: ТабличнаяЧасть.Количество() и он не считает, помогите пожалуйста
   igorPetrov
 
123 - 24.05.18 - 11:11
(122) врешь.
   StanislavPrihodko
 
124 - 24.05.18 - 11:15
(122) Там даже через ссылку (точку) ничего не вызывается.

&НаСервереБезКонтекста
Процедура ПередЗаписьюНаСервере()
    Количество(Объект.КурсовыеРаботы);
КонецПроцедуры


{Документ.План.Форма.ФормаДокумента.Форма(78,13)}: Переменная не определена (Объект)
    Количество(<<?>>Объект.КурсовыеРаботы); (Проверка: Сервер)
{Документ.План.Форма.ФормаДокумента.Форма(78,2)}: Процедура или функция с указанным именем не определена (Количество)
    <<?>>Количество(Объект.КурсовыеРаботы); (Проверка: Сервер)
   _stay true_
 
125 - 24.05.18 - 11:16
(122) что-то тут не такь
(107) количество строк считается тебе уже объяснили как, методом Количество().
(124) &НаСервереБезКонтекста  исправь на &НаСервере
   dezss
 
126 - 24.05.18 - 11:16
(124) да твою ж мать...
Количество() - это метод!!!!
Ты либо действительно жиный троль, либо двоечник и нифига не понимаешь не только в ООП, но и в терминологии ООП.
   dezss
 
127 - 24.05.18 - 11:17
(125) нульзя...у него там какой-то не такой вызов, конструктор не позволяет создать автоматом НаСервере. Если сделать вручную, то пойдут глюки.
   _stay true_
 
128 - 24.05.18 - 11:17
(124) И ёк-макарёк, так сделай: КолСтрок = Объект.КурсовыеРаботы.Количество(); и будет счастье
(126) [цензура] (124)
   _stay true_
 
129 - 24.05.18 - 11:18
(127) я просто всю ветку не читал. Нельзя так нельзя. Ещё лучше)
   igorPetrov
 
130 - 24.05.18 - 11:20
Вот и вопрос вопросов - дурак ТС или тролль?
Наплевать, конечно. Но так спортивный интерес))))
   3achem
 
131 - 24.05.18 - 11:21
Вызовите волшебника, пусть забанит тролля
   igorPetrov
 
132 - 24.05.18 - 11:22
(131) Один акк уже забанен у него))
   StanislavPrihodko
 
133 - 24.05.18 - 11:23
(128) Спасибо большое, но Объект.КурсовыеРаботы.Количество(), после слова Объект через ссылку(точку) у меня дальше ничего не вызывается это значит неправильно?
 
 
   StanislavPrihodko
 
134 - 24.05.18 - 11:24
(131) Зачем меня банить и причем я тут тролль? У меня реально не получается сделать
   igorPetrov
 
135 - 24.05.18 - 11:26
"я тут тролль" - сознался. Или просто альтернатива не нравится.))
   bolobol
 
136 - 24.05.18 - 11:33
(134) Позовите программиста?
   Dotoshin
 
137 - 24.05.18 - 11:33
(133) А ты где это пишешь?
Попробуй в модуле объекта, в процедуре ПриЗаписи, написать
КоличествоСтрок = КурсовыеРаботы.Количество();
   StanislavPrihodko
 
138 - 24.05.18 - 11:39
(137) Я хотел еще спросить, как перебором посчитать количество строк в табличной части
   StanislavPrihodko
 
139 - 24.05.18 - 11:40
(137) &НаСервереБезКонтекста
Процедура ПередЗаписьюНаСервере()
    //КолСтрок = Объект.КурсовыеРаботы.Количество();

    


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

&НаКлиенте
Процедура ПередЗаписью(Отказ, ПараметрыЗаписи)
    ПередЗаписьюНаСервере();    
КонецПроцедуры

Вот как покамись у меня :/
   Dotoshin
 
140 - 24.05.18 - 11:41
(138) Стесняюсь спросить, зачем?
   StanislavPrihodko
 
141 - 24.05.18 - 11:43
(140) Мне для примера напишите пожалуйста, чтобы я понял
   StanislavPrihodko
 
142 - 24.05.18 - 11:43
(140) + по разному пробую
   Dotoshin
 
143 - 24.05.18 - 11:45
(142) см. (7)
   StanislavPrihodko
 
144 - 24.05.18 - 11:48
(143) Для каждого Стр Из ТЧ Цикл

    //...



КонецЦикла; 

вот допустим, а что внутри писать я имею ввиду, что должно быть?
Стр = Стр + 1; ?
   Dotoshin
 
145 - 24.05.18 - 11:50
(144) А какие еще варианты могут быть?
   StanislavPrihodko
 
146 - 24.05.18 - 11:50
(145) Больше не знаю :)
   Ненавижу 1С
 
147 - 24.05.18 - 11:52
Колво = 0;

Для каждого Стр Из ТЧ Цикл

   Колво = Колво+1;

КонецЦикла;
   StanislavPrihodko
 
148 - 24.05.18 - 11:52
(145)
КолСтр = 0;
Для каждого строкаТ из ТвояТабЧасть цикл
  КолСтр  = КолСтр + ТаблПоле.ПроверитьСтроку(строкаТ )
КонецЦикла;

Что-то наподобие, но для поля, а мне для табличной части надо
   фросия
 
149 - 24.05.18 - 11:52
(138) для каждого строка из таблица количество = количество +1

Ппц
 
 Рекламное место пустует
   Dotoshin
 
150 - 24.05.18 - 11:55
(148) У тебя интерес чисто академический или ты тупо народ хочешь повеселить?
Попробуй уже выполнить этот код и почитать, что о тебе думает конфигуратор.
   alxxsssar
 
151 - 24.05.18 - 11:57
(148) Что возвращает у тебя проверитьстроку()? Зачем???? в(147) все правильно, что надо еще? Копипасти и будет тебе счастье
   StanislavPrihodko
 
152 - 24.05.18 - 12:10
Вот как получилось 
&НаСервереБезКонтекста
Процедура ПередЗаписьюНаСервере()
КоличествоСтрок = 0;
    Для Каждого Строка Из Дисциплины Цикл
        КоличествоСтрок = КоличествоСтрок + 1;
        КоличествоСтрок.Количество();
    КонецЦикла;

КонецПроцедуры
   Dotoshin
 
153 - 24.05.18 - 12:14
(152) Не зачет. Где комментарии?
   фросия
 
154 - 24.05.18 - 12:17
Зачем количествострок.количество()
   StanislavPrihodko
 
155 - 24.05.18 - 12:20
(154) Я просто написал где надо чтобы контроль выполнялся когда в табличной части меньше двух полей и дата документа меньше текущейдаты, и поэтмоу я написал там, но тут дописал:


Если КоличествоСтрок.Количество()<2 ИЛИ Документы.Дата<ТекущейДаты() Тогда 
///

КонецЕсли;

Только не знаю как написать дату документа
   StanislavPrihodko
 
156 - 24.05.18 - 12:31
Как мне заменить Документы.Дата на Дату документа?
   фросия
 
157 - 24.05.18 - 12:33
(156) ввести с клавиатуры
копи-паст
   Dotoshin
 
158 - 24.05.18 - 12:35
(156) А Документы.Дата чем не устраивает?
   StanislavPrihodko
 
159 - 24.05.18 - 12:38
(158) Когда пишу Документы.(Ссылаюсь) то выдает 2 варианта:
ТипВсеСсылки и реквизит документа, нет Даты поэтому, не устраивает = не работает, если не вызывается как я понял
   фросия
 
160 - 24.05.18 - 12:39
(159) нет даты- а что есть?
   фросия
 
161 - 24.05.18 - 12:39
почитай сто СП говорит про Документы?
   StanislavPrihodko
 
162 - 24.05.18 - 12:44
(161) Посмотрел и ничего
   alxxsssar
 
163 - 24.05.18 - 12:44
думаю тебе надо написать объект.дата 
(152) количествострок.количество() убирай нафиг. У тебя после цикла количествострок останется с сформированным значением
   StanislavPrihodko
 
164 - 24.05.18 - 12:45
(163) А как тогда мне в условие его написать?
   StanislavPrihodko
 
165 - 24.05.18 - 12:46
Ну мол Если А Или б тогда
//вывести сообщение

КонецЕсли;
   фросия
 
166 - 24.05.18 - 12:48
(164) в условии что с чем сравниваешь?
   _stay true_
 
167 - 24.05.18 - 12:50
(0)За это сейчас диплом дают? ВУЗ, специальность и кафедра какая?
   StanislavPrihodko
 
168 - 24.05.18 - 12:51
(166) Получается мне условие надо сделать так, когда в табличной части Уроки меньше двух полей или дата документа меньше текущей даты выводить сообщение:"Привет", вот и думаю какое сделать
   StanislavPrihodko
 
169 - 24.05.18 - 12:51
(167) Нет, у нас закончилось по 1Су обучение такое внешнее, а я хочу быть разрабом и попросил чтобы преподы закидали заданиями и прочими материалами, вот и сижу занимаюсь и делаю задания
   фросия
 
170 - 24.05.18 - 12:56
(169) тогда бери книжку радченко и вперед.
   фросия
 
171 - 24.05.18 - 12:57
дата документа меньше текущей даты
вот напиши что с чем сравнивать будешь?
   Dotoshin
 
172 - 24.05.18 - 13:00
(159) ИмяТвоегоДокумента.Дата попоробуй
   StanislavPrihodko
 
173 - 24.05.18 - 13:05
(172) Через . не вызывается, значит неправильно?
   фросия
 
174 - 24.05.18 - 13:06
(173) что такое документ?
   Dotoshin
 
175 - 24.05.18 - 13:09
(173) Ссылка.Дата попробуй...
   bolobol
 
176 - 24.05.18 - 13:12
Забавно наблюдать кормление тролля....

Боюсь спросить, а "&НаСервереБезКонтекста" - количество строк чего ты пытаешься получить полным перебором чего?
   StanislavPrihodko
 
177 - 24.05.18 - 13:20
(176) Действительно, мне же делать нефиг столько часов просто на форуме сидеть и якобы по вашим словам троллить, любой тролль ты устал уже наверное.
   bolobol
 
178 - 24.05.18 - 13:26
Прозрачнее некуда - на конкретно поставленный вопрос был получен ответ, полностью игнорирующий вопрос.
   StanislavPrihodko
 
179 - 24.05.18 - 13:33
(176) Мне так сказали сделать, поэтому и делать пытаюсь перебором
   _stay true_
 
180 - 24.05.18 - 13:35
(169) Хочешь быть разрабом - кури курс "Введение в конфигурирование", книжки Радченко и Хрусталёвой типа "Профессиональная разработка в среде 1С: Предприятие", устройся во франч. И город изучишь, и реальные вещи руками потрогаешь. Если дадут
   drei
 
181 - 24.05.18 - 13:37
(152) >  Для Каждого Строка Из Дисциплины Цикл

Где-то я это уже такого видел.
   drei
 
182 - 24.05.18 - 13:38
(169) > а я хочу быть разрабом

Не разделяю твоего желания.
   тарам пам пам
 
183 - 24.05.18 - 13:38
(180) Тут скорее нужен базовый курс вообще по программированию - что такое переменная, что такое процедура/функция, циклы/ветвления/операторы; из нужно ООП хотя бы понятие объекта.
Пациент явно либо тролль, либо дурак - в этих ваших интернетах уже не отличить.
   bolobol
 
184 - 24.05.18 - 13:39
(181) В этой теме - каждое восьмое сообщение. И, говорят, ещё одну такую тему вместе с троллем забанили, ибо - день сурка на каждом восьмом сообщении.
   _stay true_
 
185 - 24.05.18 - 13:40
(168) имелось ввиду меньше двух строк в ТЧ?
Если да, то как-то так.
1. Скопипасть, подправь под свои имена объектов;
2. Поставь точку останова;
3. Запусти выполнение кода, чтобы попало в точку.
4. Выдели, к примеру, "Объект", клик правой - вычислить выражение и посмотри, что у тебя непосредственно при выполнении кода происходит

Если Объект.Уроки.Количество()<2 И Объект.Дата < ТекущаяДата() Тогда

    Сообщить("Миста - сила, остальные - [цензура]");

КонецЕсли;
   alxxsssar
 
186 - 24.05.18 - 13:42
(164) если количествострок < 2 - вот и все условие
   StanislavPrihodko
 
187 - 24.05.18 - 13:51
(183) Я программирование знаю, я просто не привык к 1С + я не знаю как здесь брать данные, в той же Джаве и с++ классы спокойно вытянул и объекты и всё
   фросия
 
188 - 24.05.18 - 13:52
(187) не знаешь
перебрать строки массива и получить их количество это не привычка к 1с
   StanislavPrihodko
 
189 - 24.05.18 - 13:57
(188) Ну я базовые вещи знаю, те же массивы, а это уже задание
   Dotoshin
 
190 - 24.05.18 - 14:01
(189) А теорию БД знаеешь?
   StanislavPrihodko
 
191 - 24.05.18 - 14:07
(190) Базовые знания
   bolobol
 
192 - 24.05.18 - 14:08
Давай попробуем:


класс цэОбъект
{
класс цэСтрокаТабличнойЧасти{...};

класс цэТабличнаяЧасть
{
привэйт:
 цэСтрокаТабличнойЧасти **СтрокаТабличнойЧасти;

паблик:
 инт функшон Количество(){ ретурн сайзоф СтрокиТабличнойЧасти; };

 цэСтрокаТабличнойЧасти оператор[](инт Индэкс){ ретурн СтрокаТабличнойЧасти[Индэкс]; }
} ТабличнаяЧасть;

};

// Даны процедуры для работы:


войд НаСервереБезКонтекста() {};
войд НаСервере(цэОбъект ЭтотОбъект) {};
войд НаКлиенте(цэОбъект ЭтотОбъект) {};


Теперь стало понятнее?
   _stay true_
 
194 - 24.05.18 - 14:24
(192) Братан, ты сделал мой день!!!))) Скопипастил себе. Распечатаем, заламинируем и повесим в офисе)))
(193) А вот ругаться не хорошо. Ух как не хорошо.
Тебе вроде всё разжевали и даже примеры кода дали.
Кури мат.часть
   dezss
 
195 - 24.05.18 - 15:43
ОФФ:
а не волшебник ли был нашим троллем?)))
   bolobol
 
196 - 25.05.18 - 10:12
По инерции - собственное имя использовал? Проверял лояльность форумчан, жаждал крови?
Ибо вряд ли бы утопил ветку, если б накрутить рекламы хотел
   dezss
 
197 - 25.05.18 - 10:37
(196) не, просто пятничное настроение...а имя для острастки и внимательных...
   dezss
 
198 - 25.05.18 - 10:37
(196) просто странно, что ТС еще не забанен...
  1  2

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