|
Заполнение переменных в цикле Ø (Волшебник 18.07.2017 10:18) | ☑ | ||
---|---|---|---|---|
0
Marry04
18.07.17
✎
06:30
|
Есть цикл, в котором перебирается ТЧ документа. Из ТЧ выбираются некоторые значения ( организации (при чем они повторяются)) и заносятся в обычную переменную. Как сделать чтоб при последующих значениях переменной была проверка, а принимала ли эта переменная такое значение раннее?
|
|||
1
1dvd
18.07.17
✎
06:34
|
Нихрена не понял, но подскажу
Если СтрокаТЧ.Организация = ПеременнаяОрганизация Тогда |
|||
2
Альбатрос
18.07.17
✎
06:35
|
(0) Тоже включу вангу и подскажу: сверните ТЧ по организации, тогда повторений не будет.
|
|||
3
Convert
18.07.17
✎
06:36
|
Заполняй массив, и проверяй на вхождение нового реквизитЕсли Не Массив.Найти(СтрокаТЧ.Организация)=Неопределено тогда
//еще не встречался Иначе //уже был КонецЕсли; Массив.Добавить(СтрокаТЧ.Организация) |
|||
4
Convert
18.07.17
✎
06:36
|
вернее
Если Массив.Найти(СтрокаТЧ.Организация)=Неопределено тогда //еще не встречался Иначе //уже был КонецЕсли; |
|||
5
Marry04
18.07.17
✎
06:36
|
(1) Функция Печать() Экспорт
Если Не ЗначениеЗаполнено(СсылкаНаОбъект) Тогда Возврат Неопределено; КонецЕсли; Отправка = СсылкаНаОбъект.ПолучитьОбъект(); СсылкаНаОбъект.ПолучитьОбъект().Маршрут.Сортировать("Заявка"); //17072017 //СсылкаНаОбъект.Маршрут.НайтиСтроки( Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ОтправкаМашиныМаршрут.Заявка.Ссылка, | ОтправкаМашиныМаршрут.Заявка.Организация КАК Организация |ИЗ | Документ.ОтправкаМашины.Маршрут КАК ОтправкаМашиныМаршрут |ГДЕ | ОтправкаМашиныМаршрут.Ссылка = &ОтправкаСсылка"; Запрос.УстановитьПараметр("ОтправкаСсылка", Отправка.Ссылка); Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий () Цикл ПолучитьНаименованиеОрганизации = Выборка.Организация; //Отбор = Новый Структура; //Отбор.Вставить("Заявка", ПолучитьНаименованиеОрганизации); // СсылкаНаОбъект. //Строки = СсылкаНаОбъект.Маршрут.НайтиСтроки(Отбор); ЗапросПоОрганизациям = Новый Запрос; ЗапросПоОрганизациям.Текст = "ВЫБРАТЬ | ОтправкаМашиныМаршрут.Ссылка, | ОтправкаМашиныМаршрут.Ссылка.Организация, | ОтправкаМашиныМаршрут.Заявка.Ссылка |ИЗ | Документ.ОтправкаМашины.Маршрут КАК ОтправкаМашиныМаршрут |ГДЕ | ОтправкаМашиныМаршрут.Ссылка = &ОтправкаМашины | И ОтправкаМашиныМаршрут.Заявка.Организация = &Организация"; ЗапросПоОрганизациям.УстановитьПараметр("ОтправкаМашины", Отправка.Ссылка); ЗапросПоОрганизациям.УстановитьПараметр("Организация", ПолучитьНаименованиеОрганизации); ВыборкаПоОрганизациям = ЗапросПоОрганизациям.Выполнить().Выбрать(); Пока ВыборкаПоОрганизациям.Следующий() Цикл //Для каждого СтрокаТЧ Из СсылкаНаОбъект.Маршрут Цикл ЗаявкаОбъект = ВыборкаПоОрганизациям.ЗаявкаСсылка.ПолучитьОбъект(); //замена ВыборкаПоОрганизациям.ЗаявкаСсылка РаботаСДиалогами.НапечататьДокумент(Документы.Заявка.ПечатьНакладнойНаЗамену(ВыборкаПоОрганизациям.ЗаявкаСсылка), 2, Истина); Если ЗаявкаОбъект.Грузополучатель.Владелец.ПечФорма = Перечисления.ПечФорма.УПД Тогда РаботаСДиалогами.НапечататьДокумент(Документы.Заявка.Печать(ВыборкаПоОрганизациям.ЗаявкаСсылка,"УПД",2,Истина)); //ЗаявкаОбъект. Печать(СтрокаТЧ.Заявка,"УПД",2,Истина); ИначеЕсли ЗаявкаОбъект.Организация.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ФизЛицо И ЗаявкаОбъект.Организация.ДокументДляПечати <>Перечисления.ВидыДокументовНаПечать.ТОРГ12БезНДС Тогда РаботаСДиалогами.НапечататьДокумент(Документы.Заявка.ПечатьТоварногоЧека(ВыборкаПоОрганизациям.ЗаявкаСсылка, СсылкаНаОбъект, Истина), 1, Истина); РаботаСДиалогами.НапечататьДокумент(Документы.Заявка.ПечатьТоварногоЧека(ВыборкаПоОрганизациям.ЗаявкаСсылка, Ложь), 1, Истина); Иначе ЗаявкаОбъект.ПечатьНакладной(ВыборкаПоОрганизациям.ЗаявкаСсылка, "Печатать", СсылкаНаОбъект.Рейс, 2,, СсылкаНаОбъект, Истина); Если Не ЗаявкаОбъект.Грузополучатель.Владелец.ПечататьСчетФактуруЗапериод Тогда ЗаявкаОбъект.ПечатьСчетФактуры("Печатать", СсылкаНаОбъект.Рейс, 1); КонецЕсли; ПечатьДоверенности(ВыборкаПоОрганизациям.ЗаявкаСсылка); КонецЕсли; //КонецЦикла; КонецЦикла; КонецЦикла; Вот такой код.. надо чтоб много раз по одной орагнизации не печатались. |
|||
6
Альбатрос
18.07.17
✎
06:38
|
(5) мде...
|
|||
7
Convert
18.07.17
✎
06:40
|
(5) То есть все заявки, кроме первой по данной организации побоку?
|
|||
8
Marry04
18.07.17
✎
06:41
|
(7) (6) мне надо чтоб печатались сначала все заявки по одной организации, потом по другой..
|
|||
9
Convert
18.07.17
✎
06:41
|
(8) отсортируй по организации
|
|||
10
Альбатрос
18.07.17
✎
06:41
|
(8) Тогда открывайте для себя удивительный мир группировок и обход результата запроса по группировкам.
|
|||
11
Имитация работы
18.07.17
✎
06:53
|
(10) Ты только что убил Машу наповал. Ей надо, а ты с глупостями (:
Маша, солнышко, если ты хочешь сохранить свой чудо-алгоритм, то не выбирай в первом запросе заявку. Выбирай различные организации. И ничего больше. За два дня справишься. |
|||
12
craxx
18.07.17
✎
06:54
|
(0) массивы уже отменили?
|
|||
13
Marry04
18.07.17
✎
06:56
|
(11) мне надо напечатать все документы! обход по группировкам нужно сделать как было сказано выше.
|
|||
14
Имитация работы
18.07.17
✎
06:57
|
Кстати она круче Ливингстара-@falselight'а. Надо беречь и сохранять такую трогательную непосредственность!
|
|||
15
Имитация работы
18.07.17
✎
06:59
|
(13) Конечно-конечно, дорогая, не сердись! Сначала выберешь все организации, а потом все документы. Понятно, рыбка?
|
|||
16
SleepyHead
гуру
18.07.17
✎
07:02
|
Еще одна совершила дерзкий побег с кухни..
|
|||
17
SleepyHead
гуру
18.07.17
✎
07:03
|
(4) Тут больше соответствие подходит. Но непринципиально.
|
|||
18
Convert
18.07.17
✎
07:03
|
(13) Ответ на вопрос в (0) содержится в (3) (4). Или ты хочешь, чтоб в твой код это за тебя встроили?)
|
|||
19
Имитация работы
18.07.17
✎
07:05
|
(16) Тише, тише! Сейчас будет топот ножками. Ей. Надо.
|
|||
20
SleepyHead
гуру
18.07.17
✎
07:06
|
(19) Муж с работы придет, а борщ не сварен. Скандал будет!
|
|||
21
Имитация работы
18.07.17
✎
07:07
|
(18) И левые мужики в коде ковыряются.
|
|||
22
SleepyHead
гуру
18.07.17
✎
07:09
|
(21) И говорят - мужик, борщ вчерашний будешь? Приходи завтра!
|
|||
23
Marry04
18.07.17
✎
07:19
|
(22) (21) (18)
МассивОрганизаций = Новый Массив; МассивОрганизаций.Добавить(Выборка.Организация); Если НЕ МассивОрганизаций.Найти(Выборка.Организация)=Неопределено Тогда ПолучитьНаименованиеОрганизации = Выборка.Организация; и далее запрос по организациям всем из ТЧ. неправильно? |
|||
24
1dvd
18.07.17
✎
07:21
|
(23) ты же понимаешь, что здесь всегда будет истина?
МассивОрганизаций.Добавить(Выборка.Организация); Если НЕ МассивОрганизаций.Найти(Выборка.Организация)=Неопределено Тогда |
|||
25
Convert
18.07.17
✎
07:22
|
(23) в (3)
МассивОрганизаций.Добавить(Выборка.Организация); находится после условия |
|||
26
Имитация работы
18.07.17
✎
07:22
|
(24) [Хлопанье ресничками] (:
|
|||
27
Одинесю
18.07.17
✎
07:27
|
(14) Круче всех Юля.
|
|||
28
Имитация работы
18.07.17
✎
07:35
|
(27) Она, к сожалению, похоже отошла от дел. Внуки там и все такое :(
|
|||
29
Одинесю
18.07.17
✎
07:41
|
(28) Нет, там же 1с запретили ))
|
|||
30
Имитация работы
18.07.17
✎
07:47
|
(29) А кстати.
Маша, ты Первертайло по мужу, или так? Как там у вас сейчас с 1С, строго? |
|||
31
Convert
18.07.17
✎
07:48
|
(30) Да вроде не по мужу. Тут уже предлагали как-то мужа с мисты, который решит ей все проблемы)
|
|||
32
Convert
18.07.17
✎
07:50
|
Никто ее не заинтересовал, так что ждем новых интересных тем )
|
|||
33
Имитация работы
18.07.17
✎
07:51
|
(31) Не помню...Помню только как Горогуля клеился, жалко только, что ничего не вышло... Горогуля-Первертайло, звучит!
|
|||
34
Convert
18.07.17
✎
07:52
|
(33) Да-да, точно ))) Именно это я и вспоминал)
|
|||
35
Marry04
18.07.17
✎
07:55
|
(30) (28)
скажите пожалуйста почему у меня идет зацыкливание? печатаются по сто раз документы.. Функция Печать() Экспорт Если Не ЗначениеЗаполнено(СсылкаНаОбъект) Тогда Возврат Неопределено; КонецЕсли; Отправка = СсылкаНаОбъект.ПолучитьОбъект(); СсылкаНаОбъект.ПолучитьОбъект().Маршрут.Сортировать("Заявка"); //17072017 //СсылкаНаОбъект.Маршрут.НайтиСтроки( Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ОтправкаМашиныМаршрут.Заявка.Ссылка, | ОтправкаМашиныМаршрут.Заявка.Организация КАК Организация |ИЗ | Документ.ОтправкаМашины.Маршрут КАК ОтправкаМашиныМаршрут |ГДЕ | ОтправкаМашиныМаршрут.Ссылка = &ОтправкаСсылка"; Запрос.УстановитьПараметр("ОтправкаСсылка", Отправка.Ссылка); Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий () Цикл МассивОрганизаций = Новый Массив; Если МассивОрганизаций.Найти(Выборка.Организация)=Неопределено Тогда МассивОрганизаций.Добавить(Выборка.Организация); ПолучитьНаименованиеОрганизации = Выборка.Организация; МассивОрганизаций.Добавить(Выборка.Организация); ПолучитьНаименованиеОрганизации = Выборка.Организация; //Отбор = Новый Структура; //Отбор.Вставить("Заявка", ПолучитьНаименованиеОрганизации); // СсылкаНаОбъект. //Строки = СсылкаНаОбъект.Маршрут.НайтиСтроки(Отбор); ЗапросПоОрганизациям = Новый Запрос; ЗапросПоОрганизациям.Текст = "ВЫБРАТЬ | ОтправкаМашиныМаршрут.Ссылка, | ОтправкаМашиныМаршрут.Ссылка.Организация, | ОтправкаМашиныМаршрут.Заявка.Ссылка |ИЗ | Документ.ОтправкаМашины.Маршрут КАК ОтправкаМашиныМаршрут |ГДЕ | ОтправкаМашиныМаршрут.Ссылка = &ОтправкаМашины | И ОтправкаМашиныМаршрут.Заявка.Организация = &Организация"; ЗапросПоОрганизациям.УстановитьПараметр("ОтправкаМашины", Отправка.Ссылка); ЗапросПоОрганизациям.УстановитьПараметр("Организация", ПолучитьНаименованиеОрганизации); ВыборкаПоОрганизациям = ЗапросПоОрганизациям.Выполнить().Выбрать(); Пока ВыборкаПоОрганизациям.Следующий() Цикл //Для каждого СтрокаТЧ Из СсылкаНаОбъект.Маршрут Цикл ЗаявкаОбъект = ВыборкаПоОрганизациям.ЗаявкаСсылка.ПолучитьОбъект(); //замена ВыборкаПоОрганизациям.ЗаявкаСсылка РаботаСДиалогами.НапечататьДокумент(Документы.Заявка.ПечатьНакладнойНаЗамену(ВыборкаПоОрганизациям.ЗаявкаСсылка), 2, Истина); Если ЗаявкаОбъект.Грузополучатель.Владелец.ПечФорма = Перечисления.ПечФорма.УПД Тогда РаботаСДиалогами.НапечататьДокумент(Документы.Заявка.Печать(ВыборкаПоОрганизациям.ЗаявкаСсылка,"УПД",2,Истина)); //ЗаявкаОбъект. Печать(СтрокаТЧ.Заявка,"УПД",2,Истина); ИначеЕсли ЗаявкаОбъект.Организация.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ФизЛицо И ЗаявкаОбъект.Организация.ДокументДляПечати <>Перечисления.ВидыДокументовНаПечать.ТОРГ12БезНДС Тогда РаботаСДиалогами.НапечататьДокумент(Документы.Заявка.ПечатьТоварногоЧека(ВыборкаПоОрганизациям.ЗаявкаСсылка, СсылкаНаОбъект, Истина), 1, Истина); РаботаСДиалогами.НапечататьДокумент(Документы.Заявка.ПечатьТоварногоЧека(ВыборкаПоОрганизациям.ЗаявкаСсылка, Ложь), 1, Истина); Иначе ЗаявкаОбъект.ПечатьНакладной(ВыборкаПоОрганизациям.ЗаявкаСсылка, "Печатать", СсылкаНаОбъект.Рейс, 2,, СсылкаНаОбъект, Истина); Если Не ЗаявкаОбъект.Грузополучатель.Владелец.ПечататьСчетФактуруЗапериод Тогда ЗаявкаОбъект.ПечатьСчетФактуры("Печатать", СсылкаНаОбъект.Рейс, 1); КонецЕсли; ПечатьДоверенности(ВыборкаПоОрганизациям.ЗаявкаСсылка); КонецЕсли; //КонецЦикла; КонецЦикла; Иначе КонецЕсли; КонецЦикла; |
|||
36
Convert
18.07.17
✎
07:58
|
(33) Тебя выбрали - отвечай ))
|
|||
37
SleepyHead
гуру
18.07.17
✎
07:59
|
(35) Потому что борщ выкипел.
|
|||
38
Marry04
18.07.17
✎
08:02
|
(36) (37) по идеи - если в массиве определено значение организации - просто выход из цикла идет же, ничего печататься не должно.
|
|||
39
Convert
18.07.17
✎
08:04
|
(38) Массив в цикле не нужно объявлять, как минимум
|
|||
40
Convert
18.07.17
✎
08:05
|
(38) дальше тяжело смотреть код
|
|||
41
h-sp
18.07.17
✎
08:06
|
(38) что-то у вас тут уже двоится
МассивОрганизаций.Добавить(Выборка.Организация); ПолучитьНаименованиеОрганизации = Выборка.Организация; МассивОрганизаций.Добавить(Выборка.Организация); ПолучитьНаименованиеОрганизации = Выборка.Организация; |
|||
42
h-sp
18.07.17
✎
08:07
|
(38) Снова рюмка кофе на столе? (С)
|
|||
43
Имитация работы
18.07.17
✎
08:08
|
(35) Потому что в первом запросе ты берешь организацию из заявки, а во втором - из всего документа
|
|||
44
Имитация работы
18.07.17
✎
08:08
|
(36) Первертайло - Имитация работы, тоже ничего (:
|
|||
45
Convert
18.07.17
✎
08:13
|
(44) Клиенты начнут что-то подозревать)
|
|||
46
IvaneS
18.07.17
✎
08:42
|
(31) А фото в студию, а потом можно 1С-ника циклом подобрать.
|
|||
47
IvaneS
18.07.17
✎
08:46
|
(0) А загрузку по Excel закончила?
|
|||
48
Convert
18.07.17
✎
08:55
|
(46) Бери неглядя - не прогадаешь
|
|||
49
Marry04
18.07.17
✎
09:00
|
(48) (47) (45) (44) (42) (37) всем спасибо огромное. я только набираюсь опыта, для многих может показаться, что очень туплю))
фотку сейчас поставлю. и мужа у меня нет)))))))))) |
|||
50
Convert
18.07.17
✎
09:05
|
(49) я тоже думаю ,что зря убрала....помощников с фоткой было гораздо больше)
|
|||
51
IvaneS
18.07.17
✎
09:12
|
(49) фотку ждем-с.
|
|||
52
craxx
18.07.17
✎
09:13
|
(49) Маша, я тебя и без фотки нашел. тем более ты моя землячка
|
|||
53
craxx
18.07.17
✎
09:13
|
(52) + у нас земля талантами богата, LivingStar тоже нашенский
|
|||
54
Pentosh
18.07.17
✎
09:18
|
(49) заявочка на успех, глядишь и мужа найдете и не надо будет с запросами разбираться.
И все таки, прочитайте про обход по группировкам, вам это и нужно. запрос будет выглядеть где то так (ошибки возможны):
|
|||
55
Pentosh
18.07.17
✎
09:21
|
(53) Новосибирск которая?)
|
|||
56
IvaneS
18.07.17
✎
09:23
|
(53) Нашенски, землячки... а мы это чужие и с другой планеты? что то начинаю подозревать.
|
|||
57
Convert
18.07.17
✎
09:25
|
(56) Чужие, действительно, с другой планеты ))
|
|||
58
1dvd
18.07.17
✎
09:25
|
рептилоиды!
|
|||
59
Имитация работы
18.07.17
✎
09:26
|
Что, однако, признание о незамужестве творит - столько галантных мальчиков сразу повылазило (:
|
|||
60
Альбатрос
18.07.17
✎
09:27
|
(59) Глупые, фотки то еще не видели :)
|
|||
61
Convert
18.07.17
✎
09:29
|
(60) Те, кому надо, уже видели)
|
|||
62
Альбатрос
18.07.17
✎
09:34
|
(61) Эти из разряда "Хитрые")
|
|||
63
Имитация работы
18.07.17
✎
09:35
|
Дьявол он в мелочах. Надо различать "еще нет" от "уже нет". И сразу 1000 вопросов (:
|
|||
64
Лефмихалыч
18.07.17
✎
09:36
|
(0) постановка задачи - дичь какая-то. Но, если отвечать на вопрос так, как он поставлен, то для этого соответствия придуманы:
Организации = новый Соответствие; Для каждого СтрокаТабличнойЧасти из ТабличнаяЧасть Цикл Если Организации[СтрокаТабличнойЧасти.Организация] = Неопределено Тогда Организации[СтрокаТабличнойЧасти.Организация] = Истина; // вот здесь организация получена в первый раз Иначе // такая организация уже встречалась ранее КонецЕсли; КонецЦикла; Еще можно: Организации = ТабличнаяЧасть.Скопировать("Организация, Сумма"); Организации.Свернуть("Организация","Сумма"); Для каждого СтрокаОрганизация ИЗ Организации Цикл СтрокиТабЧасти = ТабличнаяЧасть.найтиСтроки(новый Структура("Организация", СтрокаОрганизации.Организация)); Для каждого Строка из СтрокиТабЧасти Цикл // вот тут строки только с одной организацией |
|||
65
Одинесю
18.07.17
✎
09:37
|
Да тут одни старперы для нее, женихи,блин )
|
|||
66
Имитация работы
18.07.17
✎
09:37
|
(64) Вот сразу видно женатого капитана
|
|||
67
Лефмихалыч
18.07.17
✎
09:38
|
(66) щито?..
|
|||
68
Имитация работы
18.07.17
✎
09:40
|
(65) Состоятельные кроты
(62) По-моему, вот: http://cs540102.vk.me/c7008/v7008607/1cac/qKLuQmINHn0.jpg Теребонькайте (: |
|||
69
Имитация работы
18.07.17
✎
09:41
|
(67) Вот ваша лодка, говорю (:
|
|||
70
Лефмихалыч
18.07.17
✎
09:45
|
а, автор - девочка. Я даже на ник забыл посмотреть почему-то
|
|||
71
IvaneS
18.07.17
✎
09:46
|
(70) получается - образно живешь.
|
|||
72
IvaneS
18.07.17
✎
09:54
|
(0) Почту прочла?
|
|||
73
Лефмихалыч
18.07.17
✎
09:57
|
(71) чой-та?!
просто в какой-то момент решил снизить уровень трололо в своей жизни. Вижу вопрос, на который могу и хочу ответить - отвечаю сразу. Даже вон ливингстару помогаю конструктивно, хотя это стоит мне тектонических (sic!) усилий - горы сворачивать, как мне кажется, проще... |
|||
74
Альбатрос
18.07.17
✎
10:00
|
ЛивингСтар наверное икает каждый день без перерыва и трет горящие уши )
|
|||
75
Имитация работы
18.07.17
✎
10:00
|
(72) Выезжаешь?
|
|||
76
Лефмихалыч
18.07.17
✎
10:02
|
(74) легенда местная, куле... он ОДИН затмил даже 86й год
|
|||
77
IvaneS
18.07.17
✎
10:02
|
(75) "нам отсюда хорошо видно"
|
|||
78
Имитация работы
18.07.17
✎
10:12
|
(77) Подсматривать, в таком возрасте... эхь...
|
|||
79
Имитация работы
18.07.17
✎
10:14
|
(76) Он эталон, да. Был раньше всех и уйдет позже всех.
Помню с ним Мисти сравнивали, как только она пришла - "Что это за Ливингстар в юбке?" |
|||
80
IvaneS
18.07.17
✎
10:17
|
(78) подсматривать и присматривать разные в моем понимании)))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |