Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Выполнить Запрос          
mavrik Подменю пользователя
сообщение 04.09.12, 10:55
Сообщение #1

Завсегдатай
****
Группа: Пользователи
Сообщений: 120
Из: Украина
Спасибо сказали: 2 раз
Рейтинг: 0

Нужно исключить два счёта.Как передать Счета в СписокСчетов?Подскажите новичку,Зарание благодарен
СписокСчетов = СоздатьОбъект("СписокЗначений");
Ит = СоздатьОбъект("БухгалтерскиеИтоги");      
Ит.ИспользоватьСубконто(ВидыСубконто.РахункиБанк,, 1);
Ит.ВыполнитьЗапрос(ВыбНачПериода, ВыбКонПериода,"31.1",СписокСчетов,, 2, "Месяц", "С");

MATEVI Подменю пользователя
сообщение 04.09.12, 11:10
Сообщение #2

Отдыхающий
Иконка группы
Ветеран троянской войныМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 2201
Из: Одесса
Спасибо сказали: 958 раз
Рейтинг: 0

Цитата из СП
Цитата
<КоррСчет> - необязательный параметр. Значение типа ''Счет'' - корреспондирующий счет, в корреспонденции с которым будут отбираться итоги счета, указанного в параметре <Счет>. Задается значением типа ''Счет'' или объектом типа ''СписокЗначений'', содержащим значения типа ''Счет'', либо строкой содержащей список кодов счетов, разделенных символом '','' или '';''. Если параметр не указан, будут отбираться итоги в корреспонденции со всеми счетами.

mavrik Подменю пользователя
сообщение 04.09.12, 11:15
Сообщение #3

Завсегдатай
****
Группа: Пользователи
Сообщений: 120
Из: Украина
Спасибо сказали: 2 раз
Рейтинг: 0

Я делаю по такому принципу не выходит,Выводит по всем Корр.Счетам
СписокСчетов = СоздатьОбъект("СписокЗначений");
Счет = СоздатьОбъект("Счет");
Счет.ВыбратьСчета();
Пока Счет.ПолучитьСчет() = 1 Цикл
        Если (Счет.Код = "50.1") ИЛИ (Счет.Код = "60.1") Тогда
            Продолжить;
        КонецЕсли;
СписокСчетов.ДобавитьЗначение(Счет.Код);

А если так тогда работает
СписокСчетов = СоздатьОбъект("СписокЗначений");
Счет = СоздатьОбъект("Счет");
Счет.ВыбратьСчета();
Пока Счет.ПолучитьСчет() = 1 Цикл
    Если Счет.ЭтоГруппа() = 1 Тогда    
        Если (Счет.Код = "50") ИЛИ (Счет.Код = "60") Тогда
            Продолжить;
        КонецЕсли;
    КонецЕсли;
СписокСчетов.ДобавитьЗначение(Счет.Код);

mister-x Подменю пользователя
сообщение 04.09.12, 11:38
Сообщение #4

...
Иконка группы
Модератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 3477
Из: Тернопіль
Спасибо сказали: 1417 раз
Рейтинг: 0

Цитата
или объектом типа ''СписокЗначений'', содержащим значения типа ''Счет''

куріть СчетПоКоду, а у вас Код - це значення типу стрічка

Спасибо сказали: mavrik,

MATEVI Подменю пользователя
сообщение 04.09.12, 11:42
Сообщение #5

Отдыхающий
Иконка группы
Ветеран троянской войныМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 2201
Из: Одесса
Спасибо сказали: 958 раз
Рейтинг: 0

Это вообще лишнее. Можно просто
Ит.ВключатьСубсчета(, 1); // а если поставить -1 написано в сп
Ит.ВыполнитьЗапрос(ВыбНачПериода, ВыбКонПериода,"31.1","50,60",, 2, "Месяц", "С");


Но если очееь хочется список значений то в типовой к примеру
глСчетаОстатковВВалюте = СоздатьОбъект("СписокЗначений");
глСчетаОстатковВВалюте.ИзСтрокиСРазделителями("302,312,314,332,334,3512");

Спасибо сказали: mavrik,

alex040269 Подменю пользователя
сообщение 04.09.12, 15:37
Сообщение #6

Крутой
Иконка группы
Группа: Местный
Сообщений: 1626
Из: Гуляйполе
Спасибо сказали: 236 раз
Рейтинг: 0

Цитата(mavrik @ 04.09.12, 12:15) *
Я делаю по такому принципу не выходит,Выводит по всем Корр.Счетам
СписокСчетов = СоздатьОбъект("СписокЗначений");
Счет = СоздатьОбъект("Счет");
Счет.ВыбратьСчета();
Пока Счет.ПолучитьСчет() = 1 Цикл
        Если (Счет.Код = "50.1") ИЛИ (Счет.Код = "60.1") Тогда
            Продолжить;
        КонецЕсли;
СписокСчетов.ДобавитьЗначение(Счет.Код);

А если так тогда работает
СписокСчетов = СоздатьОбъект("СписокЗначений");
Счет = СоздатьОбъект("Счет");
Счет.ВыбратьСчета();
Пока Счет.ПолучитьСчет() = 1 Цикл
    Если Счет.ЭтоГруппа() = 1 Тогда    
        Если (Счет.Код = "50") ИЛИ (Счет.Код = "60") Тогда
            Продолжить;
        КонецЕсли;
    КонецЕсли;
СписокСчетов.ДобавитьЗначение(Счет.Код);


Похоже на то, что в первом коде никогда не выполняется условие
 Если (Счет.Код = "50.1") ИЛИ (Счет.Код = "60.1") Тогда

то есть код счета <> "50.1" или "60.1" нужно искать пути
Счет = СчетПоКоду("50.1")
или
 Счет.Код = "501"


перед условием вставьте код
Сообщить(Счет.Код)


Сообщение отредактировал alex040269 - 04.09.12, 15:38


Signature
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник.
ЗиУП

Спасибо сказали: mavrik,

mavrik Подменю пользователя
сообщение 05.09.12, 7:17
Сообщение #7

Завсегдатай
****
Группа: Пользователи
Сообщений: 120
Из: Украина
Спасибо сказали: 2 раз
Рейтинг: 0

Мне нужно "50.1" и "60.1" исключить,а остальные записать. Пробовал таким методом непомогает,Через сообщить,счета есть в СпискеЗначений кроме "50.1" и "60.1" а запрос перебор идет по всем счетам
ТекСчет = Счет.Код
СписокСчетов.ДобавитьЗначение(СчетПоКоду(Счет));

Если таким методом список значений пуст
ТекСчет = Счет.ТекущийСчет();
СписокСчетов.ДобавитьЗначение(ТекСчет);


Сообщение отредактировал Vofka - 05.09.12, 8:07
Причина редактирования: Облагоразумил пост

mavrik Подменю пользователя
сообщение 05.09.12, 9:33
Сообщение #8

Завсегдатай
****
Группа: Пользователи
Сообщений: 120
Из: Украина
Спасибо сказали: 2 раз
Рейтинг: 0

Заметил такое если перебрать не все счета то Итог выводит правильный,но 50.1 не исключает,в чем проблема подскажите,как я уже не пробовал,и в перемену записывал через точку,и через точку запетою,не помогает, и
СписокСчетов.ДобавитьЗначение(СчетПоКоду(Счет.Код));
,подскажите второй день мучаюсь
СписокСчетов = СоздатьОбъект("СписокЗначений");
Счет = СоздатьОбъект("Счет");
Счет.ВыбратьСчета();
к=0;
Пока Счет.ПолучитьСчет() = 1 Цикл     
    ТекСчет = СчетПоКоду(Счет.Код);
    Если СчетПоКоду("50.1")=ТекСчет Тогда
        Продолжить;
    КонецЕсли;
    СписокСчетов.ДобавитьЗначение(Счет.Код);
    к=к+1;
    Если к=220 Тогда
        Прервать;
    КонецЕсли;
КонецЦикла;

mavrik Подменю пользователя
сообщение 05.09.12, 10:39
Сообщение #9

Завсегдатай
****
Группа: Пользователи
Сообщений: 120
Из: Украина
Спасибо сказали: 2 раз
Рейтинг: 0

Всем спасибо за помощь

Vofka Подменю пользователя
сообщение 05.09.12, 10:49
Сообщение #10

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13956
Из: Киев
Спасибо сказали: 4523 раз
Рейтинг: 3646.4

mavrik, и?

mavrik Подменю пользователя
сообщение 05.09.12, 11:08
Сообщение #11

Завсегдатай
****
Группа: Пользователи
Сообщений: 120
Из: Украина
Спасибо сказали: 2 раз
Рейтинг: 0

Только не могу понять почуму несрабатывал
Ит.ВключатьСубсчета(0,-1);

Если Счет.ЭтоГруппа() = 1 Тогда  
      Продолжить;
КонецЕсли;

alex040269 Подменю пользователя
сообщение 05.09.12, 11:08
Сообщение #12

Крутой
Иконка группы
Группа: Местный
Сообщений: 1626
Из: Гуляйполе
Спасибо сказали: 236 раз
Рейтинг: 0

Может нужно еще исключить счета группы?
В запросе есть 50 и 60 и соответственно попадают и 50.1 и 60.1


Signature
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник.
ЗиУП

mavrik Подменю пользователя
сообщение 05.09.12, 11:15
Сообщение #13

Завсегдатай
****
Группа: Пользователи
Сообщений: 120
Из: Украина
Спасибо сказали: 2 раз
Рейтинг: 0

Цитата(alex040269 @ 05.09.12, 12:08) *
Может нужно еще исключить счета группы?
В запросе есть 50 и 60 и соответственно попадают и 50.1 и 60.1

Да я уже так и сделал,пасиба

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 31.05.24, 20:38
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!