|
v7: Ит.ВыбратьСубконто, а затем Ит.ВыбратьСчета, объясните чей-то такое… | ☑ | ||
---|---|---|---|---|
0
Adecvator
18.06.12
✎
17:10
|
Как понимаю я, в разрезе субконто открываем выборку, а затем открываем выборку по счетам. Сначала идет группировка в разрезе субконто, а внутри каждого субконто уже смотрим на каких счетах оно числится.
|
|||
1
chief accountant
18.06.12
✎
17:12
|
(0) ну да
|
|||
2
Adecvator
18.06.12
✎
17:14
|
ок, понял, это так как напишешь, так лучше укладывается.
|
|||
3
Плот
18.06.12
✎
17:15
|
(0) На каких счетах были обороты по субконто за указанный период.
|
|||
4
Adecvator
18.06.12
✎
17:17
|
а зачем вставлять пустой цикл, между выборками, типа такого -
Пока Ит.ПолучитьСубконто(...) = 1 Цикл КонецЦикла; |
|||
5
Sereja
18.06.12
✎
17:19
|
(4) Может там планировали что-то дописать ?
|
|||
6
Voronve
18.06.12
✎
17:20
|
(0) Пропуск субконто
|
|||
7
Adecvator
18.06.12
✎
17:21
|
Ит.ВыбратьСубконто();
Пока Ит.ПолучитьСубконто() = 1 Цикл // Проверка цехов Ит.ВыбратьСубконто(2); Если Ит.ПолучитьСубконто(2) = 1 Тогда Расшифровка.Установить("Счет",Сч); КонецЕсли; // Не понятно зачем это делать ??????? Пока Ит.ПолучитьСубконто(2) = 1 Цикл КонецЦикла; // Проверка субсчетов Ит.ВыбратьСчета(); Пока Ит.ПолучитьСчет() = 1 Цикл |
|||
8
Плот
18.06.12
✎
17:30
|
(7) видимо какой то мусор
|
|||
9
azernot
18.06.12
✎
17:38
|
Если не прогнать пустой цикл, в выборку счетов попадут только счета имеющие итоги для первого значения субконто2
|
|||
10
Плот
18.06.12
✎
17:43
|
(9) блин, вот были подозрения на что то. Что именно на это, не знал.
|
|||
11
viktor_vv
18.06.12
✎
17:44
|
Вместо этого можно так сделать.
//Пока Ит.ПолучитьСубконто(2) = 1 Цикл //КонецЦикла; // Проверка субсчетов Ит.ВыбратьСчета(1); Пока Ит.ПолучитьСчет() = 1 Цикл |
|||
12
Adecvator
18.06.12
✎
17:54
|
(11) в этом случае вы пропускаете группировку по субконто, в моем случае это ОС - сначала, а потом 10, 13 счета.
|
|||
13
viktor_vv
18.06.12
✎
17:56
|
(12) Я пропускаю вторую группировку, которая ненужна. И пишу
Ит.ВыбратьСчета(1); Вот эта единичка и заменит пустой цикл. Параметры: <ФлагВсе> - число: 0 - отбирать те счета, которые имели итоги на этом уровне обхода итогов запроса; 1 - включить в выборку все счета, которые имели итоги в данном запросе; -1, -2 : включить в выборку счета, которые имели итоги в группировке n-го вышестоящего уровня. По умолчанию - 0. |
|||
14
chief accountant
18.06.12
✎
17:56
|
(12) В (7) бред какой-то
|
|||
15
viktor_vv
18.06.12
✎
17:59
|
Хотя че-то я тоже не совсем вкурил что там надо вывести.
|
|||
16
viktor_vv
18.06.12
✎
18:01
|
И тогда уж так заменить.
Если Ит.ВыбратьСубконто(2) =1 Тогда // Если Ит.ПолучитьСубконто(2) = 1 Тогда Расшифровка.Установить("Счет",Сч); КонецЕсли; |
|||
17
viktor_vv
18.06.12
✎
18:06
|
Ну по идее вот так должно заменить тот код.
Ит.ВыбратьСубконто(); Пока Ит.ПолучитьСубконто() = 1 Цикл // Проверка цехов Если Ит.ВыбратьСубконто(2) = 1 Тогда // Если Ит.ПолучитьСубконто(2) = 1 Тогда Расшифровка.Установить("Счет",Сч); КонецЕсли; // Не понятно зачем это делать ??????? // Пока Ит.ПолучитьСубконто(2) = 1 Цикл // КонецЦикла; // Проверка субсчетов Ит.ВыбратьСчета(-1); // или -2 Пока Ит.ПолучитьСчет() = 1 Цикл |
|||
18
Adecvator
18.06.12
✎
18:08
|
Перебираем все ОС и смотрим весит ли ОС более чем на одном 10 или 13 счетах.
|
|||
19
viktor_vv
18.06.12
✎
18:12
|
(18) А второе субконто, это что ?
|
|||
20
Adecvator
18.06.12
✎
18:14
|
(19) подразделения
|
|||
21
viktor_vv
18.06.12
✎
18:15
|
Если мен не изменяет память, то вместо (17) можно и так поменять местами.
Ит.ВыбратьСубконто(); Пока Ит.ПолучитьСубконто() = 1 Цикл // Проверка субсчетов Ит.ВыбратьСчета(); Пока Ит.ПолучитьСчет() = 1 Цикл КонецЦикла ; // Проверка цехов Если Ит.ВыбратьСубконто(2) = 1 Тогда // Если Ит.ПолучитьСубконто(2) = 1 Тогда Расшифровка.Установить("Счет",Сч); КонецЕсли; // Не понятно зачем это делать ??????? // Пока Ит.ПолучитьСубконто(2) = 1 Цикл // КонецЦикла; То есть счета можно выбирать на любом уровне обхода субконто. |
|||
22
viktor_vv
18.06.12
✎
18:17
|
(20) И по подразделениям надо узнать только, есть там хоть что-то или нет для конкретного ОС ?
|
|||
23
Adecvator
18.06.12
✎
18:19
|
получается что выбрали сначала по 1-ому субконто, потом по 2-ому и только потом по счету
|
|||
24
Adecvator
18.06.12
✎
18:20
|
(9) как правильно подмечено.
|
|||
25
viktor_vv
18.06.12
✎
18:22
|
Но по второму, кроме как узнать есть ли там что в выборке, больше ничего не надо ?
|
|||
26
Adecvator
19.06.12
✎
10:24
|
(25) совершенно верно, надо что бы в выборку попали все подразделение(субконто2).
|
|||
27
chief accountant
19.06.12
✎
10:34
|
(26) ну так и начинай выборку со второго субконто. Или я не догоняю что тебе нужно
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |