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

Хранилище

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

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



> Удалить последнюю запись в ТЧ при программном заполнении          
Constantus Подменю пользователя
сообщение 12.04.18, 12:55
Сообщение #1

Ветеран
*******
Группа: Пользователи
Сообщений: 962
Спасибо сказали: 8 раз
Рейтинг: 0

Приветствую, форумчане!
"Управление торговлей 10.3", (Моби-С 5.5). "ABBYY Ukraine", 2003-2014 (2.3.20.1)

Программно заполняю ТЧ документа:

    для каждого стр из з.Выполнить().Выгрузить() цикл 
        новСтр  = РасходныеНакладные.Добавить();
        новСтр.РеализацияТоваровУслуг = стр.Ссылка;
        новСтр.Контрагент = новСтр.РеализацияТоваровУслуг.Контрагент;
        новСтр.Сумма = стр.СуммаДокумента;
        ЗаполнитьОбщийВесРейса ();
        ЗаполнитьОбщийОбъемРейса();
        Если НЕ Срочный Тогда
        Если ОбщийВесРН > Грузоподъемность Тогда
            Сообщить("Вес превышает установленные нормы");
            Прервать;
        КонецЕсли;    
        КонецЕсли;
    КонецЦикла;


Как видно, там есть условие, если вес превышает, то прекратить дальнейшее заполнение. Но дело в том, что сначала заполняются данные, потом идет проверка.
Так вот, при заполнении последней записи, когда срабатывает условие, эта запись сохраняется.

Как можно удалить или не сохранять эту последнюю запись с перебором по весу?

sava1 Подменю пользователя
сообщение 12.04.18, 13:23
Сообщение #2

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2684
Из: Проскуров
Спасибо сказали: 678 раз
Рейтинг: 656.7

А проверить до заполнения - никак ?

Constantus Подменю пользователя
сообщение 12.04.18, 13:30
Сообщение #3

Ветеран
*******
Группа: Пользователи
Сообщений: 962
Спасибо сказали: 8 раз
Рейтинг: 0

Вот нашел. Вроде работают все 3 варианта. Но какой из них надежнее и стабильнее?


            РасходныеНакладные.Удалить(новСтр);
            РасходныеНакладные.Удалить(РасходныеНакладные.Количество()-1);
            РасходныеНакладные.Удалить(РасходныеНакладные[РасходныеНакладные.Количество()-1]);


sava1 Подменю пользователя
сообщение 12.04.18, 13:33
Сообщение #4

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2684
Из: Проскуров
Спасибо сказали: 678 раз
Рейтинг: 656.7

первая - надежно.

Constantus Подменю пользователя
сообщение 12.04.18, 13:43
Сообщение #5

Ветеран
*******
Группа: Пользователи
Сообщений: 962
Спасибо сказали: 8 раз
Рейтинг: 0

sava1 @ Сегодня, 16:33 * ,


Я так и знал!!! icon_beer17.gif

Vofka Подменю пользователя
сообщение 16.04.18, 9:06
Сообщение #6

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

Цитата(sava1 @ 12.04.18, 14:33) *
первая - надежно.

А что может пойти не так при использовании 2 и 3 варианта?

sava1 Подменю пользователя
сообщение 16.04.18, 9:19
Сообщение #7

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2684
Из: Проскуров
Спасибо сказали: 678 раз
Рейтинг: 656.7

Да вроде ничего - но это больше похоже на "ректальный" метод - у нас есть ссылка на строку, а мы ищем последнюю в ТЧ.

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


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

 

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