|
v7: запрос не выбирает период | ☑ | ||
---|---|---|---|---|
0
alex_reglament
12.12.11
✎
15:22
|
привет все помогите пожалуйста с запросом
мне нужно док получить из запроса но он не получает Процедура Сформировать() спрБанка = СоздатьОбъект("Справочник.БанковскиеСчета"); Если Счет_62 = 1 Тогда Счет_62_ = СчетПоКоду("62"); Иначе Счет_62_ = ""; КонецЕсли; Если Счет_76 = 1 Тогда Счет_76_ = СчетПоКоду("76"); Иначе Счет_76_ = ""; КонецЕсли; счет = Счет_62_; //+ Счет_76_; //******************************************* Таб = СоздатьОбъект("Таблица"); Таб.ВывестиСекцию("Шапка"); Ит_1 = СоздатьОбъект("БухгалтерскиеИтоги"); Ит_1.ИспользоватьСубконто(ВидыСубконто.Контрагенты); Ит_1.ВыполнитьЗапрос(НачМесяца(Дата_),КонМесяца(Дата_),СчетПоКоду("62"),,,,"Проводка"); Ит_1.ВыбратьПериоды(); Пока Ит_1.ПолучитьПериод() > 0 Цикл Ит_1.ВыбратьСубконто(); Пока Ит_1.ПолучитьСубконто() = 1 Цикл РачетныйСчет = ""; СуммаОбщая = ""; СуммаПросроченная = ""; Если Ит_1.СКД() <> 0 Тогда спрБанка.ИспользоватьВладельца(Ит_1.Субконто().ТекущийЭлемент()); Контрагент = Ит_1.Субконто(); УНП = Ит_1.Субконто().УНН; спрБанка.ВыбратьЭлементы(); Пока спрБанка.ПолучитьЭлемент() = 1 Цикл Если Число(спрБанка.Код) = 1 Тогда РачетныйСчет = спрБанка.Наименование + ": р/с №" + СокрЛП(спрБанка.НомерСчета); Иначе РачетныйСчет = ""; КонецЕсли; КонецЦикла; СуммаОбщая = Ит_1.СКД(); СуммаПросроченная = Ит_1.Операция.ДатаОперации; Таб.ВывестиСекцию("Строка"); КонецЕсли; КонецЦикла; КонецЦикла; Таб.ПараметрыСтраницы(2, , , , , , , , , 1); Таб.Опции(0, 0, 6, 13, "дебиторская задолжность"); Таб.ТолькоПросмотр(1); Таб.Показать("дебиторская задолжность"); КонецПроцедуры |
|||
1
alex_reglament
12.12.11
✎
15:23
|
Ит_1.ВыполнитьЗапрос(НачМесяца(Дата_),КонМесяца(Дата_),СчетПоКоду("62"),,,,"месяц");
если делать так то заполняется все кроме СуммаПросроченная = Ит_1.Операция.ДатаОперации; почему |
|||
2
1Сергей
12.12.11
✎
15:26
|
ВыбратьСчета()
|
|||
3
alex_reglament
12.12.11
✎
15:30
|
это что в место периода?
|
|||
4
vinogradъ
12.12.11
✎
15:33
|
(1) какая операция должна быть при периодичности "месяц"?
|
|||
5
alex_reglament
12.12.11
✎
15:36
|
Процедура Сформировать()
спрБанка = СоздатьОбъект("Справочник.БанковскиеСчета"); Если Счет_62 = 1 Тогда Счет_62_ = СчетПоКоду("62"); Иначе Счет_62_ = ""; КонецЕсли; Если Счет_76 = 1 Тогда Счет_76_ = СчетПоКоду("76"); Иначе Счет_76_ = ""; КонецЕсли; счет = Счет_62_; //+ Счет_76_; //******************************************* Таб = СоздатьОбъект("Таблица"); Таб.ВывестиСекцию("Шапка"); Ит_1 = СоздатьОбъект("БухгалтерскиеИтоги"); Ит_1.ИспользоватьСубконто(ВидыСубконто.Контрагенты); Ит_1.ВыполнитьЗапрос(НачМесяца(Дата_),КонМесяца(Дата_),СчетПоКоду("62"),,,,"Проводка"); Ит_1.ВыбратьСчета(); Пока Ит_1.ПолучитьСчет() > 0 Цикл Ит_1.ВыбратьСубконто(); Пока Ит_1.ПолучитьСубконто() = 1 Цикл РачетныйСчет = ""; СуммаОбщая = ""; СуммаПросроченная = ""; Если Ит_1.СКД() <> 0 Тогда спрБанка.ИспользоватьВладельца(Ит_1.Субконто().ТекущийЭлемент()); Контрагент = Ит_1.Субконто(); УНП = Ит_1.Субконто().УНН; спрБанка.ВыбратьЭлементы(); Пока спрБанка.ПолучитьЭлемент() = 1 Цикл Если Число(спрБанка.Код) = 1 Тогда РачетныйСчет = спрБанка.Наименование + ": р/с №" + СокрЛП(спрБанка.НомерСчета); Иначе РачетныйСчет = ""; КонецЕсли; КонецЦикла; СуммаОбщая = Ит_1.СКД(); СуммаПросроченная = Ит_1.Операция.Документ.Вид(); Таб.ВывестиСекцию("Строка"); КонецЕсли; КонецЦикла; КонецЦикла; Таб.ПараметрыСтраницы(2, , , , , , , , , 1); Таб.Опции(0, 0, 6, 13, "дебиторская задолжность"); Таб.ТолькоПросмотр(1); Таб.Показать("дебиторская задолжность"); КонецПроцедуры |
|||
6
alex_reglament
12.12.11
✎
15:36
|
так колонка пустая
|
|||
7
1Сергей
12.12.11
✎
15:36
|
(5) не вместо, а ещё цикл добавь
|
|||
8
alex_reglament
12.12.11
✎
15:37
|
(4) мне вообще нужно документ получить а из него уже реквизит что на форме дока лежит
|
|||
9
alex_reglament
12.12.11
✎
15:38
|
а с переодичностью месяц проводка документ я просто пробовал и не чего не получается
|
|||
10
alex_reglament
12.12.11
✎
15:38
|
так ит_1.ВыбратьПериод(); в отладчике = 0
цикл перд ним ставить? |
|||
11
1Сергей
12.12.11
✎
15:40
|
(10) тебе надо по всем контрагентам вместе или перебрать их нужно?
|
|||
12
alex_reglament
12.12.11
✎
15:42
|
по всем
|
|||
13
alex_reglament
12.12.11
✎
15:42
|
только два счета 76 и 62
|
|||
14
alex_reglament
12.12.11
✎
15:44
|
блин ну что ж такое то ни как не получается
|
|||
15
1Сергей
12.12.11
✎
15:44
|
(12) тогда убери вот это:
//Ит_1.ИспользоватьСубконто(ВидыСубконто.Контрагенты); |
|||
16
alex_reglament
12.12.11
✎
15:46
|
а следом и цикл
Ит_1.ВыбратьСубконто(); Пока Ит_1.ПолучитьСубконто() = 1 Цикл правильно? |
|||
17
1Сергей
12.12.11
✎
15:48
|
(16) а, стоп. не заметил этого цикла
|
|||
18
alex_reglament
12.12.11
✎
15:48
|
а как же я получу контрагента?
|
|||
19
1Сергей
12.12.11
✎
15:49
|
(16) ну, закомментируй, попробуй. Странно, что он у тебя периоды не выбирает
|
|||
20
1Сергей
12.12.11
✎
15:50
|
(18) тэкс. значит всё-таки надо не по всем
|
|||
21
alex_reglament
12.12.11
✎
15:54
|
в том то и дело что странно
|
|||
22
alex_reglament
12.12.11
✎
15:55
|
после коментирования ругается на контрагента
|
|||
23
1Сергей
12.12.11
✎
15:55
|
может тебе надо не счета перебирать, а корсчета?
|
|||
24
alex_reglament
12.12.11
✎
15:55
|
спрБанка.ИспользоватьВладельца(Ит_1.Субконто().ТекущийЭлемент());
Контрагент = Ит_1.Субконто(); УНП = Ит_1.Субконто().УНН; спрБанка.ВыбратьЭлементы(); Пока спрБанка.ПолучитьЭлемент() = 1 Цикл Если Число(спрБанка.Код) = 1 Тогда РачетныйСчет = спрБанка.Наименование + ": р/с №" + СокрЛП(спрБанка.НомерСчета); Иначе РачетныйСчет = ""; КонецЕсли; КонецЦикла; |
|||
25
1Сергей
12.12.11
✎
15:55
|
(22) а периоды вбирает?
|
|||
26
1Сергей
12.12.11
✎
15:55
|
выбирает?
|
|||
27
alex_reglament
12.12.11
✎
16:01
|
нет!
|
|||
28
alex_reglament
12.12.11
✎
16:01
|
так мой код правильный?
|
|||
29
alex_reglament
12.12.11
✎
16:04
|
он вообще период выбирать отказывается
Процедура Сформировать() спрБанка = СоздатьОбъект("Справочник.БанковскиеСчета"); Если Счет_62 = 1 Тогда Счет_62_ = СчетПоКоду("62"); Иначе Счет_62_ = ""; КонецЕсли; Если Счет_76 = 1 Тогда Счет_76_ = СчетПоКоду("76"); Иначе Счет_76_ = ""; КонецЕсли; счет = Счет_62_; //+ Счет_76_; //******************************************* Таб = СоздатьОбъект("Таблица"); Таб.ВывестиСекцию("Шапка"); Ит_1 = СоздатьОбъект("БухгалтерскиеИтоги"); Ит_1.ИспользоватьСубконто(ВидыСубконто.Контрагенты); Ит_1.ВыполнитьЗапрос(НачМесяца(Дата_),КонМесяца(Дата_),СчетПоКоду("62"),,,,"Проводка"); //Ит_1.ВыбратьСчета(); //Пока Ит_1.ПолучитьСчет() > 0 Цикл Ит_1.ВыбратьПериоды(); Пока Ит_1.ПолучитьПериод() > 0 Цикл //Ит_1.ВыбратьСубконто(); //Пока Ит_1.ПолучитьСубконто() = 1 Цикл РачетныйСчет = ""; СуммаОбщая = ""; СуммаПросроченная = ""; Если Ит_1.СКД() <> 0 Тогда // спрБанка.ИспользоватьВладельца(Ит_1.Субконто().ТекущийЭлемент()); // Контрагент = Ит_1.Субконто(); // УНП = Ит_1.Субконто().УНН; // спрБанка.ВыбратьЭлементы(); // Пока спрБанка.ПолучитьЭлемент() = 1 Цикл // Если Число(спрБанка.Код) = 1 Тогда // РачетныйСчет = спрБанка.Наименование + ": р/с №" + СокрЛП(спрБанка.НомерСчета); // Иначе // РачетныйСчет = ""; // КонецЕсли; // КонецЦикла; СуммаОбщая = Ит_1.СКД(); СуммаПросроченная = Ит_1.Операция.Документ.Вид(); Таб.ВывестиСекцию("Строка"); КонецЕсли; КонецЦикла; //КонецЦикла; //КонецЦикла; Таб.ПараметрыСтраницы(2, , , , , , , , , 1); Таб.Опции(0, 0, 6, 13, "дебиторская задолжность"); Таб.ТолькоПросмотр(1); Таб.Показать("дебиторская задолжность"); КонецПроцедуры |
|||
30
alex_reglament
12.12.11
✎
16:07
|
(29) таблица пустая! Ит_1.ВыбратьПериоды() = 0
|
|||
31
alex_reglament
12.12.11
✎
16:07
|
что делать?
|
|||
32
2S
12.12.11
✎
16:09
|
что за фантаст код?
Если Счет_62 = 1 Тогда Счет_62_ = СчетПоКоду("62"); Иначе Счет_62_ = ""; КонецЕсли; Если Счет_76 = 1 Тогда Счет_76_ = СчетПоКоду("76"); Иначе Счет_76_ = ""; КонецЕсли; счет = Счет_62_; //+ Счет_76_; |
|||
33
2S
12.12.11
✎
16:09
|
включатьсубсчета где?
|
|||
34
alex_reglament
12.12.11
✎
16:10
|
//Если Счет_62 = 1 Тогда
// Счет_62_ = СчетПоКоду("62"); // Иначе // Счет_62_ = ""; // КонецЕсли; // Если Счет_76 = 1 Тогда // Счет_76_ = СчетПоКоду("76"); // Иначе // Счет_76_ = ""; // КонецЕсли; // счет = Счет_62_; //+ Счет_76_; |
|||
35
alex_reglament
12.12.11
✎
16:10
|
это что то изменит
|
|||
36
1Сергей
12.12.11
✎
16:10
|
(35) если 62 - это группа, то да
|
|||
37
2S
12.12.11
✎
16:10
|
как связяно СКД и период "Операция"
ЖКК в помощь |
|||
38
alex_reglament
12.12.11
✎
16:15
|
мне нужно получить документ а не связовать СКД с Операцией
|
|||
39
2S
12.12.11
✎
16:17
|
БИ.Операция.Документ.ТекущийДокумент()
если не забыл еще ) |
|||
40
alex_reglament
12.12.11
✎
16:18
|
Таб = СоздатьОбъект("Таблица");
Таб.ВывестиСекцию("Шапка"); Ит_1 = СоздатьОбъект("БухгалтерскиеИтоги"); Ит_1.ИспользоватьСубконто(ВидыСубконто.Контрагенты); Ит_1.ВыполнитьЗапрос(НачМесяца(Дата_),КонМесяца(Дата_),СчетПоКоду("62"),,,,"Проводка"); //Ит_1.ВыбратьСчета(); //Пока Ит_1.ПолучитьСчет() > 0 Цикл Ит_1.ВыбратьПериоды(); Пока Ит_1.ПолучитьПериод() > 0 Цикл //Ит_1.ВыбратьСубконто(); //Пока Ит_1.ПолучитьСубконто() = 1 Цикл РачетныйСчет = ""; СуммаОбщая = ""; СуммаПросроченная = ""; Если Ит_1.СКД() <> 0 Тогда // спрБанка.ИспользоватьВладельца(Ит_1.Субконто().ТекущийЭлемент()); // Контрагент = Ит_1.Субконто(); // УНП = Ит_1.Субконто().УНН; // спрБанка.ВыбратьЭлементы(); // Пока спрБанка.ПолучитьЭлемент() = 1 Цикл // Если Число(спрБанка.Код) = 1 Тогда // РачетныйСчет = спрБанка.Наименование + ": р/с №" + СокрЛП(спрБанка.НомерСчета); // Иначе // РачетныйСчет = ""; // КонецЕсли; // КонецЦикла; СуммаОбщая = Ит_1.СКД(); СуммаПросроченная = Ит_1.Операция.Документ.ТекущийДокумент().Вид(); Таб.ВывестиСекцию("Строка"); КонецЕсли; КонецЦикла; //КонецЦикла; //КонецЦикла; Таб.ПараметрыСтраницы(2, , , , , , , , , 1); Таб.Опции(0, 0, 6, 13, "дебиторская задолжность"); Таб.ТолькоПросмотр(1); Таб.Показать("дебиторская задолжность"); КонецПроцедуры таблица пустая Ит_1.ВыбратьПериоды() =0 |
|||
41
alex_reglament
12.12.11
✎
16:29
|
что ни кто не поможет?
|
|||
42
alex_reglament
12.12.11
✎
16:31
|
Ит_1.Операция.Документ.ТекущийДокумент() //пустое значение
|
|||
43
2S
12.12.11
✎
16:33
|
вот Вы мне объясните, для чего после выборки по виду "Операция" необходимо получить значение СКД()?
|
|||
44
alex_reglament
12.12.11
✎
16:33
|
аук люди не бросайте меня одного
|
|||
45
alex_reglament
12.12.11
✎
16:34
|
вот задание что мне нужно было сделать
Отчет по дебеторской задолжности Должн онализировать задолжность по 62 и 76 счетам на дату реквизиты формы 1. Наименование субконто 1 2. Унп субконто1. унн 3. Банковские ревизиты (основ расчет счет , наименование, кодбанка) найти по контрагенту 4. Сумма задолжности общая (с итогом по колонке) СКД 5. Сумма задолжности просроч(датадок + дней для требов) из накладной |
|||
46
alex_reglament
12.12.11
✎
16:36
|
а где у меня выборка по виду операция?
|
|||
47
alex_reglament
12.12.11
✎
16:38
|
да и на сколько у меня оброзования хватает я думаю что если б СКД мешало то оно было бы равно 0 а колонка которая у меня пустая заполнялась бы данными а вот почему запрос не хочет отдать мне документ на это образования у меня не хватает что бы понять
|
|||
48
alex_reglament
12.12.11
✎
16:39
|
блин меня акоро забанят помогите мне пожалуйста
|
|||
49
2S
12.12.11
✎
16:42
|
что за конфигурация?
Я повторю свой вопрос - Как Вы хотите получить СКД() по операции?! Поймите - это не аналитика БИ! |
|||
50
alex_reglament
12.12.11
✎
16:43
|
конфигурация = sway
Я повторю свой вопрос - Как Вы хотите получить СКД() по операции?! Поймите - это не аналитика БИ! //я вас не понимаю |
|||
51
2S
12.12.11
✎
16:43
|
5. Сумма задолжности просроч(датадок + дней для требов) из накладной
Как это реализовано в Вашей конфигурации - документ - это субконто? Сейчас все начнут советовать, я в принципе поддержу - "Переходите на 8-ку" |
|||
52
2S
12.12.11
✎
16:44
|
+(51) как узнать, что оплата прошла или не прошла именно по данному документу?
|
|||
53
alex_reglament
12.12.11
✎
16:44
|
вот на 8 -ке у меня проблем нет!! а на 7 есть
|
|||
54
alex_reglament
12.12.11
✎
16:45
|
да именно по скд!
|
|||
55
alex_reglament
12.12.11
✎
16:45
|
или если док проведен!
|
|||
56
2S
12.12.11
✎
16:45
|
та млять!
счет 62 имеет какие субконто? |
|||
57
alex_reglament
12.12.11
✎
16:46
|
СчетПоКоду("62") = Расчеты с покупателями и заказчиками
СчетПоКоду("76") = Расчеты с разными дебиторами и кредиторами |
|||
58
alex_reglament
12.12.11
✎
16:46
|
одно Контрагенты
|
|||
59
2S
12.12.11
✎
16:47
|
еще немного и начну зарабатывать больше 8-шников )
|
|||
60
alex_reglament
12.12.11
✎
16:47
|
давай
|
|||
61
alex_reglament
12.12.11
✎
16:48
|
счета и есть факт оплаты!
|
|||
62
2S
12.12.11
✎
16:48
|
и?
Итоги формируются только по данной аналитике. Повторю, как вы хотите получить итоги по документам? Может у вас какой-то регистр прикручен для отслеживания оплаты по документам? я ж не знаю... |
|||
63
alex_reglament
12.12.11
✎
16:49
|
да Сумма задолжности просроч по из дока а Сумма задолжности общая СКД!
|
|||
64
alex_reglament
12.12.11
✎
16:50
|
регистров нет были бы зделал сам у меня с БИ проблемы а с регистрами нет
|
|||
65
2S
12.12.11
✎
16:53
|
ТЗ = СоздатьОбъект("ТаблицаЗначений");
ТЗ.НоваяКолонка("Контрагент"); ТЗ.НоваяКолонка("ДолгОбщий","Число"); ТЗ.НоваяКолонка("ДолгПросроченный","Число"); Ит_1 = СоздатьОбъект("БухгалтерскиеИтоги"); Ит_1.ИспользоватьСубконто(ВидыСубконто.Контрагенты); Ит_1.ВключатьСубсчета(0); Ит_1.ВыполнитьЗапрос(НачМесяца(Дата_),КонМесяца(Дата_),"62",,,,"Операция"); Ит_1.ВыбратьСубконто(ВидыСубконто.Контрагенты); Пока Ит_1.ПолучитьСубконто(ВидыСубконто.Контрагенты) = 1 Цикл СуммаДолгаОбщая = Ит_1.СКД() - Ит_1.СКК(); Если СуммаДолгаОбщая = 0 Тогда Продолжить; КонецЕсли; ТЗ.НоваяСтрока(); ТЗ.Контрагент = Ит_1.Субконто(1); ТЗ.ДолгОбщий = СуммаДолгаОбщая; СуммаДолгаПросроченная = 0; Ит_1.ВыбратьПериоды(); Пока Ит_1.ПолучитьПериод() = 1 Цикл Сообщить(ТЗ.Контрагент); Сообщить(Ит_1.Операция.Документ.ТекущийДокумент()); Сообщить(Ит_1.СКД()); КонецЦикла; КонецЦикла; Посмотрите данный код. Вы получите СКД после каждой операции, только ОПЯТЬ! повторю вопрос - как определить оплату/не оплату по документу?! |
|||
66
alex_reglament
12.12.11
✎
16:54
|
значит так сночало запрос получает наименование контрагента затем его унн затем расчетный счет контрагента затем скд затем получает из текущего дока реквизиты датадок и ДнейТребования затем если ДатаДок + ДнейТребования < КонМесяца(Дата_) тогда сумма из дока
|
|||
67
alex_reglament
12.12.11
✎
16:55
|
зачем мне ее определять факт данных на счету 62 и 76 и есть оплата!
|
|||
68
2S
12.12.11
✎
16:56
|
Зарубите на носу - с такой аналитикой на счете 62 это невозможно
|
|||
69
2S
12.12.11
✎
16:57
|
заведите вторую аналитику "Документ" и ведите партионный учет по документам. Тогда Ващи возможности учета увеличаться.
|
|||
70
alex_reglament
12.12.11
✎
16:58
|
(68) почему
|
|||
71
alex_reglament
12.12.11
✎
16:59
|
+(65) попробовал Ит_1.ВыбратьПериоды() =0
|
|||
72
2S
12.12.11
✎
16:59
|
скажу как 8-ку - нет измерения "Документ" или регистратора
|
|||
73
2S
12.12.11
✎
17:00
|
(71) за указанный период есть документы движения по контрагентам?
|
|||
74
alex_reglament
12.12.11
✎
17:09
|
ладно всем спосибо нашел выход буду анализировать другой счет у которого есть несколько субконто и второе из низ док
|
|||
75
alex_reglament
12.12.11
✎
17:12
|
(73) если б небыло то и ветки небыло
|
|||
76
rider
12.12.11
✎
22:01
|
может так выбратьПериоды(,,,1)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |