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

Хранилище

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

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



> При изменения статуса заказа, заказ не проводится          
MOTOPARTNER Подменю пользователя
сообщение 22.04.22, 7:25
Сообщение #1

Общительный
**
Группа: Пользователи
Сообщений: 43
Из: Харьков
Спасибо сказали: 1 раз
Рейтинг: 1



Есть кнопка в 1С отправить СМС с ТТН при нажатии на нее отправляется ТТН и меняется статус заказа.
Сам код:

    Объект.СостояниеЗаказа = ПредопределенноеЗначение("Справочник.СостоянияЗаказовПокупателей.Отправлен");
    Объект.ТТН_Статус = Истина;    
    Если ЗначениеЗаполнено(ТТН) Тогда
        Форма = ПолучитьФорму("Документ.Событие.Форма.ФормаСообщенияSMS");
        Форма.Объект.ДокументОснование = Объект.Ссылка;  
        Форма.Объект.ТипСобытия = ПредопределенноеЗначение("Перечисление.ТипыСобытий.СообщениеSMS");
        Форма.Объект.НомерТелефона = Объект.КонтактныйТелефон;
        Форма.Объект.Клиент = Объект.Контрагент;
        Форма.Объект.Тема = "ТТН на замовлення";
        Форма.Объект.Содержание = "ТТН на замовлення " +Объект.Номер+ " Нова пошта ТТН: " +Объект.ТТН+ "";
        Форма.Записать();
        ////    Если Вопрос("Отправить без редактирования?", РежимДиалогаВопрос.ДаНет, 0) = КодВозвратаДиалога.Нет Тогда
        ////        Предупреждение("Теперь отправка SMS только вручную!!!");
        ////        Форма.ОткрытьМодально();
        ////    Иначе
        Форма.Отправить(Неопределено);
        ////    КонецЕсли;
        ////
    Если Вопрос("Открыть реестр посылок?", РежимДиалогаВопрос.ДаНет, 0) = КодВозвратаДиалога.Да Тогда
        ОбъектКопирования = Новый COMОбъект("htmlfile");
        ОбъектКопирования.ParentWindow.ClipboardData.SetData("Text",Объект.ТТН);
        ЗапуститьПриложение("https://new.novaposhta.ua/dashboard/invoices-in");
    Иначе
        Возврат;
    КонецЕсли;


Все работает, статус подставляет но когда начинаю проводить заказ пишет вот такую ошибку, когда вручную меняю все хорошо.



Цитата
{Документ.ЗаказПокупателя.Форма.ФормаДокумента.Форма(3013)}: Ошибка при вызове метода контекста (Записать)
Записать(ПараметрыЗаписи);
по причине:
Ошибка при выполнении обработчика - 'ПриЗаписи'
по причине:
{ОбщийМодуль.СостоянияЗаказов.Модуль(230)}: Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата)
Записать(ПараметрыЗаписи);

по причине:
Ошибка при выполнении обработчика - 'ПриЗаписи'
по причине:
{ОбщийМодуль.СостоянияЗаказов.Модуль(230)}: Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата)

{ОбщийМодуль.СостоянияЗаказов.Модуль(230)}: Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата)
Если ПорядокПредыдущего = Неопределено Или ПорядокТекущего >= ПорядокПредыдущего Тогда


Вот в этом коде что-то точно не дописал...

Объект.СостояниеЗаказа = ПредопределенноеЗначение("Справочник.СостоянияЗаказовПокупателей.Отправлен");


Подскажите, что нужно дописать.

Сообщение отредактировал Vofka - 22.04.22, 8:55

Vofka Подменю пользователя
сообщение 22.04.22, 8:57
Сообщение #2

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

В одной из этих переменных у вас не число находится: ПорядокТекущего, ПорядокПредыдущего. Возможно, ПорядокТекущего в этом случае Неопределено.

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

MOTOPARTNER Подменю пользователя
сообщение 22.04.22, 10:05
Сообщение #3

Общительный
**
Группа: Пользователи
Сообщений: 43
Из: Харьков
Спасибо сказали: 1 раз
Рейтинг: 1

Так что теперь делать? ))) Как убрать эту ошибку?

andr_andrey Подменю пользователя
сообщение 22.04.22, 10:43
Сообщение #4

Почти ветеран
Иконка группы
Группа: Местный
Сообщений: 635
Спасибо сказали: 171 раз
Рейтинг: 136.4

MOTOPARTNER @ Сегодня, 11:05 * ,
Поставить точку останова, посмотреть значение переменных.
Затем, применяя логику и изучая код, определить где и как должны меняться значения этих переменных и узнать причину ошибки.
Затем, применяя навыки программирования, исправить ошибку.

Сообщение отредактировал andr_andrey - 22.04.22, 10:45


Signature
#define private public
enum BOOL { FALSE, TRUE, FILENOTFOUND } is made my day

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

MOTOPARTNER Подменю пользователя
сообщение 22.04.22, 18:58
Сообщение #5

Общительный
**
Группа: Пользователи
Сообщений: 43
Из: Харьков
Спасибо сказали: 1 раз
Рейтинг: 1

Может нужно не ПредопределенноеЗначение("Справочник.СостоянияЗаказовПокупателей.Отправлен"); указывать?
За место ПредопределенноеЗначение что-то другое?

denis84 Подменю пользователя
сообщение 23.04.22, 5:46
Сообщение #6

Оратор
Иконка группы
Группа: Местный
Сообщений: 462
Из: Украина
Спасибо сказали: 151 раз
Рейтинг: 152.8

MOTOPARTNER @ Вчера, 19:58 * ,
Напишите просто Справочник.СостоянияЗаказовПокупателей.Отправлен

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

Общительный
**
Группа: Пользователи
Сообщений: 43
Из: Харьков
Спасибо сказали: 1 раз
Рейтинг: 1

denis84 @ Сегодня, 6:46 * ,
Если так тогда ошибка

{Документ.ЗаказПокупателя.Форма.ФормаДокумента.Форма(11646,27)}: Переменная не определена (Справочники)
    Объект.СостояниеЗаказа = <<?>>Справочники.СостоянияЗаказовПокупателей.Отправлен; (Проверка: Тонкий клиент)

ZenBi Подменю пользователя
сообщение 26.04.22, 17:03
Сообщение #8

Общительный
**
Группа: Пользователи
Сообщений: 37
Спасибо сказали: 1 раз
Рейтинг: 0

MOTOPARTNER @ 23.04.22, 12:17 * ,
Я конечно человек глупый, а в некоторых местах вообще тормоз... но где Вы выполняете команду? На сервере или на клиенте?

- Если на сервере, то:
Объект.СостояниеЗаказа = Справочники.СостоянияЗаказовПокупателей.Отправлен;

- А вот если на клиенте, то:
Объект.СостояниеЗаказа = ПредопределенноеЗначение("Справочник.СостоянияЗаказовПокупателей.Отправлен");


Как-то так.

ЗЫ. Хотя может быть что я не понял проблемы. И да проверьте пожалуйсть есть ли вообще предопределённый елемент, или справочник хранит информацию типа булево.


Стоять!
Только сейчас прочитал все сообщения темы.
Ели проблема все ещё в типе данных, тогда Vofka дал ответ.
ПОставьте точку остановки и проверьте значения "ПорядокТекущего, ПорядокПредыдущего"
Если ПорядокПредыдущего = неопределено то ошибка имеет место быть.




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

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


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

 

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