Имя: Пароль:
1C
1С v8
Проверка нумерация СФ УТ 10.3
,
0 nvhost
 
25.06.14
20:17
Ребят помогите с механизмом, есть идея вычитать из предыдущего номера текущий номер, но как релизовать не разберусь, в выборке запроса предыдущего нет, есть только следующий, вызрузить В ТЗ?
1 Hans
 
25.06.14
20:42
задача как звучит?
2 nvhost
 
25.06.14
20:50
Проверка Нумерации СчетФактур, запрос получаю все СФ, Дальше нужно взять каждый номер 1,2,3,4,6,8,11 - из этого списка видно что номер 5 пропущен, пропущен номер 7, 9 и 10, набо сообщить об этом оператору
То есть Если ТекущийНомер - Предыдущий >=1 Тогда
Сообщить(Пропущен номер: 5)
Вот тут еще не понятно если два номер пропущено...
3 arccos6pi
 
25.06.14
21:00
я это вижу как-то так
Предыдущий = 0;
Пока РезультатЗапроса.Следующий() Цикл
    Если РезультатЗапроса.Номер - Предыдущий > 1 Тогда
        Для Сч = 1 По РезультатЗапроса.Номер - Предыдущий Цикл
            Сообщить("Пропущен " + (РезультатЗапроса.Номер + Счетчик));
        Сч = Сч + 1;
    КонецЦикла;
        Предыдущий = РезультатЗапроса.Номер;
    КонецЕсли;
КонецЦикла;
4 arccos6pi
 
25.06.14
21:09
лоханулся, Предыдущий = РезультатЗапроса.Номер; перед последним КонецЦикла
5 arccos6pi
 
25.06.14
21:13
опять косячу,спешу
Сообщить("Пропущен " + (Предыдущий + Счетчик));
6 arccos6pi
 
25.06.14
21:16
да что такое
счетчик= сч
7 nvhost
 
26.06.14
15:53
Пасибо больше очень помогли!Позже представлю рабочий код
8 nvhost
 
04.07.14
23:54
Вот рабочий код

Пока РезультатЗапроса.Следующий() Цикл
        ЧислоПропущенных = Число(Прав(РезультатЗапроса.Номер,5)) - Предыдущий;
        Если ЧислоПропущенных > 1 Тогда
        Для Сч = 1 По ЧислоПропущенных Цикл
            НомерПропущенЧисло= Число(Прав(РезультатЗапроса.Номер,5)) - ЧислоПропущенных;
            НомерПропущенСтрока = Лев(ПредыдущийНомер,6) + Строка(НомерПропущенЧисло);
            Стр = ТабличноеПоле1.Добавить();
            Стр.Номер = НомерПропущенСтрока;
            ЧислоПропущенных = ЧислоПропущенных -1;
        КонецЦикла;
        Стр = ТабличноеПоле1.Добавить();
        Стр.СчетФактура = РезультатЗапроса.Ссылка;

КонецЕсли

Но задача усложнилась, помогите решить....вообщем надо за день находить неправельные номре, например если исползовались номер 1 по 49 СФ в этот день вдруг попалась 235, надо об этом сказать оператору...в голову ниче не идет
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший