Имя: Пароль:
1C
1С v8
Подсчет банковских дней
0 Ly_Alena
 
04.02.16
08:07
Доброе утро! В документе есть срок и два вида подсчета дней (календарные дни, банковские дни). С календарными проблем нет. А вот с банковскими - проблема. Может подскажите как быть?
1 zak555
 
04.02.16
08:09
у каждого банка свой банковский день
2 Одинесю
 
04.02.16
08:09
График банковских дней, наверное должен быть.
3 Ly_Alena
 
04.02.16
08:09
(1) Хорошо пусть будет будние дни
4 zak555
 
04.02.16
08:10
(3) что за конфа ?
5 Ly_Alena
 
04.02.16
08:10
Рабочие
6 Ly_Alena
 
04.02.16
08:10
(4) УПП. Пишу

УправлениеВзаиморасчетами.ОпределитьДату(Дата, СпецификацияКоличествоДней);

Ниче не возвращает
7 Ly_Alena
 
04.02.16
08:11
(6) Через отладчик смотрела - количество дней и дату передает.
8 Одинесю
 
04.02.16
08:16
(6) Не нашел такой функции в УПП.
9 Ly_Alena
 
04.02.16
08:17
(8) Общий модуль
10 Одинесю
 
04.02.16
08:18
(9) Я понимаю - нет там такой функции.
11 Одинесю
 
04.02.16
08:19
Там только такая

// Процедура заполняет поле ДатаОплаты в строке табличной части ДокументыРасчетовСКонтрагентом
// при изменении документа расчетов
//
Процедура ОпределитьДатуОплатыДокументаРасчетовСКонтрагентом(ДанныеСтроки) Экспорт
12 Ly_Alena
 
04.02.16
08:35
(11) Видимо дописана. Хорошо, в любом случае она не дает мне что надо. Как посчитать дату по количеству рабочих дней?
13 zak555
 
04.02.16
08:38
(12) убирай все дописки

используй вычисление дат с помощью производственого календаря из блока зарплаты
14 Ly_Alena
 
04.02.16
08:41
(13) в этой функции как раз и берет из производственного календаря

Запрос.Текст = "
        |ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ " + ЧислоДней + "
        |    РегламентированныйПроизводственныйКалендарь.ДатаКалендаря
        |ИЗ
        |    РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь
        |ГДЕ РегламентированныйПроизводственныйКалендарь.ДатаКалендаря > &ДатаНач
        |     И РегламентированныйПроизводственныйКалендарь.ВидДня = &РабочийДень
        |УПОРЯДОЧИТЬ ПО
        |    ДатаКалендаря
        |";


    Выборка = Запрос.Выполнить().Выбрать();
    
    Если Выборка.Количество() = ЧислоДней Тогда
        Пока Выборка.Следующий() Цикл
            Сообщить(Выборка.ДатаКалендаря);
            ТекДата = Выборка.ДатаКалендаря;
        КонецЦикла;
        Возврат ТекДата;
    КонецЕсли;
    
    Возврат Неопределено;
15 nazi
 
04.02.16
08:43
(14) календарь заполните
16 Ly_Alena
 
04.02.16
08:50
(15) Заполнен!
17 Ly_Alena
 
04.02.16
08:51
(15) Блинский блин! Точно! В локальной не заполнен, а проверяла на ней! Спасибо!