Ошибка операция сравнения на больше меньше допустимы только для значений

Примерный перечень услуг:

Доработка 1С по Вашему техническому или устному заданию;

Создание внешних отчетов, обработок, печатных форм;

Создание конфигураций с «нуля»;

Обновление регламентированной отчетности, обновление релизов типовых и нетиповых конфигураций 1С;

Обмен данными между различными конфигурациями 1С;

Написание правил обмена данными при помощи Конвертации данных 2.0

Написание правил обмена данными при помощи Конвертации данных 3.0

Написание мобильных приложений для 1С

Загрузка данных в 1С из других программ(Excel, Navision, форматы DBF, txt, xml);

Выгрузка данных из 1С в интернет-магазины;

Настройка обмена с 1С-Битрикс;

Абонентское обслуживание организаций — в комплекс услуг входит 1-2 плановых выезда в месяц, обновление программ, консультации по телефону, настройка архивации баз данных по расписанию, небольшие доработки, оперативное устранение неполадок при различных сбоях;

Автоматизация розничных магазинов;

Обучение пользователей, разграничение прав пользователей, первоначальная настройка баз данных;

Помощь в закупке, подключении и настройке торгового оборудования (кассовые аппараты, POS-терминалы, сканеры штрихкодов, принтеры этикеток, терминалы сбора данных, весы с печатью штрихкодов);

Некоторые функции системного администратора — настройка сети, роутеров, принтеров, сборка-настройка ПК, установка Windows, офисных программ, лечение от вирусов;

NEW! Восстановление поврежденных баз данных 1С на уровне таблиц, в том числе если не помогли стандартные инструменты(chdfl, тестирование и исправление);

NEW! Услуги приходящего бухгалтера, подробности по телефону    + любые проблемы и задачи, связанные с 1С и автоматизацией.

NEW! Интеграция в ваше прикладное решение модуля из БСП (библиотека стандартных подсистем). 

Цены*:  

Работа у вас в офисе — 2500 руб/час, минимальный выезд 3000;

Удаленно(через программу Team Viewer ) — 1500 руб/час, минимальный объем 1 час, оплата на карту Сбербанка или Яндекс-кошелек, Альфабанк;

При необходимости можно оплатить по безналу с полным пакетом документов — договор, счет, акт об оказании услуг(+10% к сумме);

Абонентское обслуживание — от 5000 руб/месяц;

Готовые отчеты и обработки — от 1000 руб (смотрите Готовые решения).

Если есть конкретное задание — договариваемся о сумме, и работа выполняется до получения результата, независимо от потраченного времени.

*Не удержусь от комментария к ценам — вы наверняка заметили, что стоимость часа работы программистов 1С может отличаться в разы. Естественно, возникает желание сэкономить, но здесь необходимо учесть такие моменты, как сроки и качество работ. К примеру, у одного специалиста час работы стоит 1000 р., у другого 2000 р., но при этом первый затратит на решение вашей задачи 8 часов(8*1000=8000 руб), а второй сделает все за 3 часа(3*2000=6000 руб). Я уже не говорю о фирмах-франчайзи, в которых начинающие стажеры за ваши деньги и на вашей рабочей базе обучаются программированию в 1С. В итоге, желая сэкономить на оплате одного часа работы, вы, во-первых, переплачиваете 2000 р., а во-вторых еще и тратите 4 часа своего времени. Что выгоднее — решать вам, были в моей практике и такие заказчики, которым, казалось, важен был сам процесс, а не результат работы:)

   doctorwatson

03.07.14 — 01:40

Всем доброго времени суток!

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

БП 3.0, при проведении документа «Начисление зарплаты» за май 2014 вылезает сообщение: «Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата». Ошибка возникает при добавлении одной конкретной сотрудницы, без неё всё проводится нормально. За апрель 2014 этой сотруднице все начислилось без проблем. Если вытащить её в отдельный документ — та же ошибка. Что тут можно сделать?

   doctorwatson

1 — 03.07.14 — 01:42

Полный текст ошибки:

Ошибка при выполнении обработчика — ‘ОбработкаПроведения’

по причине:

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

        МодульЧисла = ?(МассивКоэф[К] > 0, МассивКоэф[К], — МассивКоэф[К]);

О.о для меня это китайская грамота.

   КонецЦикла

2 — 03.07.14 — 01:57

МассивКоэф[К] содержит не число, а какую-то муть

А как оно туда попадает… отладчик подскажет

   Wobland

3 — 03.07.14 — 06:45

отладчик без фото не работает

   doctorwatson

4 — 03.07.14 — 07:39

http://static.diary.ru/userdir/2/3/1/3/231375/81398336.jpg

Дошла до этого места через кнопку «Конфигуратор» в режиме отладки, а дальше куда? я полный нуб, помогите).

   SeraFim

5 — 03.07.14 — 07:46

Меню — Отладка — Вычислить Выражение — МассивКоэф[К]

   doctorwatson

6 — 03.07.14 — 22:34

У меня этот пункт меню неактивен, почему?

   hhhh

7 — 03.07.14 — 23:14

а как шла по модулю? кнопкой F10?

   Ринат-СПб

8 — 03.07.14 — 23:41

(7) Да нет… по скрину видно, что просто нажала кнопку «конфигуратор» после того, как выскочила ошибка.

Нужно объяснить про точки остановки и вообще про отладчик :)

   softmaker

9 — 04.07.14 — 07:22

Чтобы понять какое значение массива вызывает ошибку вам нужно выбрать пункт меню Меню — Отладка — Остановка по ошибке. В диалоге установить флаг Останавливаться по ошибке. Потом запустить 1С в режиме отладки F5. Затем провести ваш документ снова и при появлении ошибки отладчик остановится в том месте, где у вас ошибка. Выделите МассивКоэф[К] и вызовите правой кнопкой мыши контекстное меню. В меню выберите пункт Вычислить выражение. Нужно посмотреть какое значение имеет элемент массива МассивКоэф[К] и проанализировать почему такое значение появляется.

   doctorwatson

10 — 18.07.14 — 14:52

Значение «Null», почему так может быть?

   Wobland

11 — 18.07.14 — 14:54

(10) отсюда не видно. например, МассивКоэф[0]=NULL

   doctorwatson

12 — 18.07.14 — 15:30

Тьфу, простите. Уработалась.

У МассивКоэф[К] тип Null и значение никакое не расчитывается:

http://s1.uploads.im/zSAr3.png

   Wobland

13 — 18.07.14 — 15:36

(12) от такой массив параметром передался

   doctorwatson

14 — 18.07.14 — 15:37

Что с этим делать-то?

   Wobland

15 — 18.07.14 — 15:39

(14) элементарно, Ватсон! посмотреть, как вызывается эта функция

   El_Duke

16 — 18.07.14 — 15:39

(14) Совет без всякой иронии: пригласите специалиста

   doctorwatson

17 — 18.07.14 — 15:45

(15) расскажите пожалуйста, если не трудно, как это делается?

(16) как только кто из старших коллег появится — спрошу, но они могут в офис не скоро приехать, а разделаться с этой бедой надо, ибо уже надоела, другие вещи поинтереснее есть.

   Wobland

18 — 18.07.14 — 15:45

(17) шайтан-вьюер?

   doctorwatson

19 — 18.07.14 — 16:06

отсюда не выйдет( на рабочих пк инет отрублен, а здесь 1с не работает.

   doctorwatson

20 — 25.07.14 — 16:24

Всем большое спасибо за помощь. Бух перепроверила заполнение доков по сотруднице и все улеглось.

  

mikecool

21 — 25.07.14 — 16:25

а фотку так и не увидели

  

doctorwatson

03.07.14 — 01:40

Всем доброго времени суток!

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

БП 3.0, при проведении документа «Начисление зарплаты» за май 2014 вылезает сообщение: «Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата». Ошибка возникает при добавлении одной конкретной сотрудницы, без неё всё проводится нормально. За апрель 2014 этой сотруднице все начислилось без проблем. Если вытащить её в отдельный документ — та же ошибка. Что тут можно сделать?

  

doctorwatson

1 — 03.07.14 — 01:42

Полный текст ошибки:

Ошибка при выполнении обработчика — ‘ОбработкаПроведения’

по причине:

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

        МодульЧисла = ?(МассивКоэф[К] > 0, МассивКоэф[К], — МассивКоэф[К]);

О.о для меня это китайская грамота.

  

КонецЦикла

2 — 03.07.14 — 01:57

МассивКоэф[К] содержит не число, а какую-то муть

А как оно туда попадает… отладчик подскажет

  

Wobland

3 — 03.07.14 — 06:45

отладчик без фото не работает

  

doctorwatson

4 — 03.07.14 — 07:39

http://static.diary.ru/userdir/2/3/1/3/231375/81398336.jpg

Дошла до этого места через кнопку «Конфигуратор» в режиме отладки, а дальше куда? я полный нуб, помогите).

  

SeraFim

5 — 03.07.14 — 07:46

Меню — Отладка — Вычислить Выражение — МассивКоэф[К]

  

doctorwatson

6 — 03.07.14 — 22:34

У меня этот пункт меню неактивен, почему?

  

hhhh

7 — 03.07.14 — 23:14

а как шла по модулю? кнопкой F10?

  

Ринат-СПб

8 — 03.07.14 — 23:41

(7) Да нет… по скрину видно, что просто нажала кнопку «конфигуратор» после того, как выскочила ошибка.

Нужно объяснить про точки остановки и вообще про отладчик :)

  

softmaker

9 — 04.07.14 — 07:22

Чтобы понять какое значение массива вызывает ошибку вам нужно выбрать пункт меню Меню — Отладка — Остановка по ошибке. В диалоге установить флаг Останавливаться по ошибке. Потом запустить 1С в режиме отладки F5. Затем провести ваш документ снова и при появлении ошибки отладчик остановится в том месте, где у вас ошибка. Выделите МассивКоэф[К] и вызовите правой кнопкой мыши контекстное меню. В меню выберите пункт Вычислить выражение. Нужно посмотреть какое значение имеет элемент массива МассивКоэф[К] и проанализировать почему такое значение появляется.

  

doctorwatson

10 — 18.07.14 — 14:52

Значение «Null», почему так может быть?

  

Wobland

11 — 18.07.14 — 14:54

(10) отсюда не видно. например, МассивКоэф[0]=NULL

  

doctorwatson

12 — 18.07.14 — 15:30

Тьфу, простите. Уработалась.

У МассивКоэф[К] тип Null и значение никакое не расчитывается:

http://s1.uploads.im/zSAr3.png

  

Wobland

13 — 18.07.14 — 15:36

(12) от такой массив параметром передался

  

doctorwatson

14 — 18.07.14 — 15:37

Что с этим делать-то?

  

Wobland

15 — 18.07.14 — 15:39

(14) элементарно, Ватсон! посмотреть, как вызывается эта функция

  

El_Duke

16 — 18.07.14 — 15:39

(14) Совет без всякой иронии: пригласите специалиста

  

doctorwatson

17 — 18.07.14 — 15:45

(15) расскажите пожалуйста, если не трудно, как это делается?

(16) как только кто из старших коллег появится — спрошу, но они могут в офис не скоро приехать, а разделаться с этой бедой надо, ибо уже надоела, другие вещи поинтереснее есть.

  

Wobland

18 — 18.07.14 — 15:45

(17) шайтан-вьюер?

  

doctorwatson

19 — 18.07.14 — 16:06

отсюда не выйдет( на рабочих пк инет отрублен, а здесь 1с не работает.

  

doctorwatson

20 — 25.07.14 — 16:24

Всем большое спасибо за помощь. Бух перепроверила заполнение доков по сотруднице и все улеглось.

  

mikecool

21 — 25.07.14 — 16:25

а фотку так и не увидели

Примерный перечень услуг:

Доработка 1С по Вашему техническому или устному заданию;

Создание внешних отчетов, обработок, печатных форм;

Создание конфигураций с «нуля»;

Обновление регламентированной отчетности, обновление релизов типовых и нетиповых конфигураций 1С;

Обмен данными между различными конфигурациями 1С;

Написание правил обмена данными при помощи Конвертации данных 2.0

Написание правил обмена данными при помощи Конвертации данных 3.0

Написание мобильных приложений для 1С

Загрузка данных в 1С из других программ(Excel, Navision, форматы DBF, txt, xml);

Выгрузка данных из 1С в интернет-магазины;

Настройка обмена с 1С-Битрикс;

Абонентское обслуживание организаций — в комплекс услуг входит 1-2 плановых выезда в месяц, обновление программ, консультации по телефону, настройка архивации баз данных по расписанию, небольшие доработки, оперативное устранение неполадок при различных сбоях;

Автоматизация розничных магазинов;

Обучение пользователей, разграничение прав пользователей, первоначальная настройка баз данных;

Помощь в закупке, подключении и настройке торгового оборудования (кассовые аппараты, POS-терминалы, сканеры штрихкодов, принтеры этикеток, терминалы сбора данных, весы с печатью штрихкодов);

Некоторые функции системного администратора — настройка сети, роутеров, принтеров, сборка-настройка ПК, установка Windows, офисных программ, лечение от вирусов;

NEW! Восстановление поврежденных баз данных 1С на уровне таблиц, в том числе если не помогли стандартные инструменты(chdfl, тестирование и исправление);

NEW! Услуги приходящего бухгалтера, подробности по телефону    + любые проблемы и задачи, связанные с 1С и автоматизацией.

NEW! Интеграция в ваше прикладное решение модуля из БСП (библиотека стандартных подсистем). 

Цены*:  

Работа у вас в офисе — 2500 руб/час, минимальный выезд 3000;

Удаленно(через программу Team Viewer ) — 1500 руб/час, минимальный объем 1 час, оплата на карту Сбербанка или Яндекс-кошелек, Альфабанк;

При необходимости можно оплатить по безналу с полным пакетом документов — договор, счет, акт об оказании услуг(+10% к сумме);

Абонентское обслуживание — от 5000 руб/месяц;

Готовые отчеты и обработки — от 1000 руб (смотрите Готовые решения).

Если есть конкретное задание — договариваемся о сумме, и работа выполняется до получения результата, независимо от потраченного времени.

*Не удержусь от комментария к ценам — вы наверняка заметили, что стоимость часа работы программистов 1С может отличаться в разы. Естественно, возникает желание сэкономить, но здесь необходимо учесть такие моменты, как сроки и качество работ. К примеру, у одного специалиста час работы стоит 1000 р., у другого 2000 р., но при этом первый затратит на решение вашей задачи 8 часов(8*1000=8000 руб), а второй сделает все за 3 часа(3*2000=6000 руб). Я уже не говорю о фирмах-франчайзи, в которых начинающие стажеры за ваши деньги и на вашей рабочей базе обучаются программированию в 1С. В итоге, желая сэкономить на оплате одного часа работы, вы, во-первых, переплачиваете 2000 р., а во-вторых еще и тратите 4 часа своего времени. Что выгоднее — решать вам, были в моей практике и такие заказчики, которым, казалось, важен был сам процесс, а не результат работы:)

Эмили

1 / 1 / 1

Регистрация: 14.05.2013

Сообщений: 379

1

Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число

24.04.2015, 18:45. Показов 20920. Ответов 2

Метки нет (Все метки)


Подскажите в чем ошибка? при попытке перхода в режим пользователя появляется ошибка
Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов

в коде

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
&НаСервере
Процедура МинимальныеОстатки () Экспорт
    // СправочникПоСсылке = Справочники.ТоварыИУслуги;
    //   СправочникПоСсылке = СсылкаНаСправочник.ПолучитьОбъект();
    //Возврат СправочникПоСсылке.МинимальныеОстатки;
    
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |   ТовароОборотОстатки.Товар,
        |   ТовароОборотОстатки.КоличествоОстаток КАК КоличествоОстаток,
        |   ТоварыИУслуги.МинимальныеОстатки КАК МинОст
        |ИЗ
        |   РегистрНакопления.ТовароОборот.Остатки КАК ТовароОборотОстатки
        |       ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ТоварыИУслуги КАК ТоварыИУслуги
        |       ПО ТовароОборотОстатки.Товар = ТоварыИУслуги.Ссылка";
    
    РезультатЗапроса = Запрос.Выполнить();
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        ЕСЛИ ВыборкаДетальныеЗаписи.КоличествоОстаток<ВыборкаДетальныеЗаписи.МинОст Тогда
            Сообщить(" "+ВыборкаДетальныеЗаписи.Товар + 
            " осталось меньше " + ВыборкаДетальныеЗаписи.МинОст+ " шт. ("
            + ВыборкаДетальныеЗаписи.КоличествоОстаток + " шт.). "
            + "НЕОБХОДИМО ЗАКАЗАТЬ " + ВыборкаДетальныеЗаписи.Товар);
        КонецЕсли;
    КонецЦикла;
КонецПроцедуры

относительно данной строки

1C
1
ЕСЛИ ВыборкаДетальныеЗаписи.КоличествоОстаток<ВыборкаДетальныеЗаписи.МинОст Тогда

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь

0

Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

24.04.2015, 18:45

Ответы с готовыми решениями:

Как определяется диапозон допустимых значений примитивных типов?
Почему byte имеет диапозон от -128 до 128, short от -32,768 до 32,767 и так далее?

Сериализатор для примитивных типов данных
Доброго вечера, подскажите, как сделать сериализатор или хотя бы пните в нужную сторону. Нужно…

Написать регулярное выражение для примитивных типов данных
Требуется написать регулярное выражение для примитивных типов int,float,char, а также их массивов….

Выбор значений больше и меньше из диапазона для заданного числа
Два дня читал форум, пытался сам разобраться, но так и не смог. Прошу помочь, если это возможно….

2

Эксперт 1С

434 / 305 / 92

Регистрация: 28.05.2014

Сообщений: 1,247

25.04.2015, 21:45

2

Эмили, в отладчике поставить точку останова и посмотреть какой тип данных в выборке при сравнении, должны быть одного типа, возможно одно из значений пустое и принимает значение Null

0

Dethmontt

Модератор

Эксперт 1С

3697 / 2897 / 569

Регистрация: 10.03.2011

Сообщений: 11,398

Записей в блоге: 1

26.04.2015, 00:20

3

Цитата
Сообщение от Эмили
Посмотреть сообщение

| * ТоварыИУслуги.МинимальныеОстатки КАК МинОст

Замени на

1C
1
|   isnull(ТоварыИУслуги.МинимальныеОстатки,0) КАК МинОст

0

Ermak
22.01.2016 10:02 Прочитано: 4578

Доброе утро! При добавлении документа выдает ошибку. Регистра сведений не заполнен.Ошибка при выполнении обработчика — ‘ОбработкаПроведения’по причине:{Документ.ЗаявкаНаРемонт.МодульОбъекта(36)}: Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата)

Код 1C v 8.х

 Процедура ОбработкаПроведения(Отказ, Режим)

Фильтр = Новый Структура();     
Фильтр.Вставить("Маршрут",ЛицевойСчет.Участок);
КоличествоЗ=РегистрыСведений.ПланировщикРемонтныхЗаявок.ПолучитьПоследнее(КонецДня(Дата),Фильтр).Количество;

Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
              | СтатусЗаявокНаРемонт.Период КАК Период,
              | СтатусЗаявокНаРемонт.Участок КАК Маршрут,
              | КОЛИЧЕСТВО(СтатусЗаявокНаРемонт.Статус) КАК Количество,
              | СтатусЗаявокНаРемонт.ЛицевойСчет.АбонентскийУчасток КАК АбонентскийУчасток
              |ИЗ
              | РегистрСведений.СтатусЗаявокНаРемонт КАК СтатусЗаявокНаРемонт
              |ГДЕ
              | СтатусЗаявокНаРемонт.Участок =Маршрут
              | И СтатусЗаявокНаРемонт.Период МЕЖДУДатаНач ИДатаКон
              | И СтатусЗаявокНаРемонт.ЛицевойСчет.АбонентскийУчасток =АбонентскийУчасток
              |
              |СГРУППИРОВАТЬ ПО
              | СтатусЗаявокНаРемонт.Период,
              | СтатусЗаявокНаРемонт.Участок,
              | СтатусЗаявокНаРемонт.ЛицевойСчет.АбонентскийУчасток";

Запрос.УстановитьПараметр("Маршрут",ЛицевойСчет.Участок);
Запрос.УстановитьПараметр("АбонентскийУчасток",АбонентскийУчасток);
Запрос.УстановитьПараметр("ДатаНач",НачалоДня(Дата));
Запрос.УстановитьПараметр("ДатаКон",КонецДня(Дата));
Результат = Запрос.Выполнить().Выбрать();

Пока Результат.Следующий() Цикл              
КоличествоЗаявок=Результат.Количество;
КонецЦикла;

Если КоличествоЗаявок < КоличествоЗ или Не ЗначениеЗаполнено(КоличествоЗ) Тогда
Движение = Движения.СтатусЗаявокНаРемонт.Добавить();
Движение.Период = НачалоДня(Дата);
Движение.ДатаЗаявки=НачалоДня(Дата);
Движение.Участок=ЛицевойСчет.Участок; 
Движение.Заявка = Ссылка;
Движение.ЛицевойСчет = ЛицевойСчет;
Движение.Статус=Перечисления.СтатусЗаявки.Новая;
Иначе
Предупреждение("На этот день количество заявок закончились!"+Символы.ПС+"Выберите другую дату.");
Отказ=Истина;
КонецЕсли;

КонецПроцедуры

Yandex
Возможно, вас также заинтересует

Реклама на портале

IBReiter
22.01.2016 10:17 Ответ № 1

Ошибка в 36 строке — смотрите, какое там условие, оно у вас сравнивает несравнимое

Отладчиком сделайте остановку по ошибке и увидите какие типы у сравниваемых элементов и тогда уже решайте, что с этим делать

Подсказка: Для редактирования своего ответа щелкните по значку (справа)

Показывать по
10
20
40
сообщений

Новая тема

Ответить

Nadezhda

Дата регистрации: 18.02.2005
Сообщений: 42

Добрый день.<br><br>Ошибка «Операции сравнения на больше-меньше допустимы только над значениями совпадающих базовых типов (число, строка, дата)». <br><br>Причем, в описании ошибки не указывается конкретная строка модуля, которая вызывает ошибку.<br><br>Эта ошибка появляется на 25-м релизе платформы, а на 21-м почему-то точно такие же действия проходят «на ура».<br><br>Может ли как-то быть связано с релизом или же какими настройками?<br><br>

Olex

Дата регистрации: 04.02.2005
Сообщений: 198

При каких действиях выдаётся сообщение? Скорее всего, сравнение выполняется в печатной или экранной форме.

Nadezhda

Дата регистрации: 18.02.2005
Сообщений: 42

Сообщение выдается при нажатии кнопки «Закрыть» (но не на процедуре, которая выполняется по нажатию этой кнопки) после изменений в форме документа. Возможно, в экранной форме… измучалась вся… как найти?

Olex

Дата регистрации: 04.02.2005
Сообщений: 198

Какая конфигурация? Какой документ?<br><br>Просмотреть все заголовки и формулы у всех элементы экранной формы, включая табличную часть.<br><br>В модуле перед первым использованием обнулить переменные. <br><br>Таблицы значений создаются в модуле? Всем колонкам тип прописан?<br><br>

Nadezhda

Дата регистрации: 18.02.2005
Сообщений: 42

Конфигурация «Гостиница+Пансионат», ред 4.1 (работает на компоненте Оперативный учет)<br><br>Отступление… когда франчи ставили, сказали, что на 23-ей платформе работает плохо, поэтому поставим на 21-ую… я почему и спросила, может ли подобная ошибка зависеть от релиза платформы…<br><br><br><br>Так, документ «Размещение» (ктоторый, собственно, и создает все движения по регистрам и проч.) <br><br>Просмотрела все заголовки и формулы, ничего плохого.<br><br>Таблицы значений создаются, заполняются методом «ВыгрузитьТабличнуюЧасть()»…<br><br>может быть там?<br><br>

Olex

Дата регистрации: 04.02.2005
Сообщений: 198

Возможно, используются внешние компоненты, которые тестировались только с 21 релизом.<br><br><br><br>Если md в архиве меньше 2 мегов, могу посмотреть.<br><br><br><br>Olexich@rambler.ru

Nadezhda

Дата регистрации: 18.02.2005
Сообщений: 42

Olex

Дата регистрации: 04.02.2005
Сообщений: 198

Дело, скорее всего, в устаревшем файле SinHotel.dll.<br><br><br><br>На сайте http://www.gostinitsa.info/cgi-bin/hotel/main.cgi?table=curver в самом низу страницы сообщается следующее:<br><br><br><br><…><br><br>Новая версия sinhotel.dll<br><br>Для работы с релизом 1С 7.70.023 необходимо использовать новую версию SinHotel.dll.<br><br>Скачать ее можно здесь.<br><br>Предыдущие версии dll без проблем работают со всеми релизами 1С от 7.70.015 до 7.70.021.<br><br>

Nadezhda

Дата регистрации: 18.02.2005
Сообщений: 42

Показывать по
10
20
40
сообщений

Здравствуйте. Написал я обработку проведения:(вроде с логикой всё верно) Процедура ОбработкаПроведения(Отказ, Режим) Когда пытаешсья провести документ, выдаёт ошибку и ругается на строчку в коде:  «Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата)        Если Выборка.Количество > Выборка.КоличествоОстаток Тогда» Подскажите пожалуйста, как с этим можно побороться. Заранее спасибо.

разобраться, почему в количествах не числа

+ и использовать магию ЕСТЬNULL

Ставил точку останова, повычислял выражения, выяснил, что Выборка.КоличествоОстаток имеет тип Null. Я в 1С новичок, можете написать, как использовать этот самый ЕСТЬNULL?))

выбрать ЕСТЬNULL(ПолеГдеОжидаетсяНУЛЛ, ЗначениеКотороеНужноВместоНулла)

хотел бы запутать, писал бы выбор когда УчетОборудованияОстатки.КоличествоОстаток есть NULL тогда 0 иначе УчетОборудованияОстатки.КоличествоОстаток конец ;)

а потом будем избавлять автора от деления на ноль

кстати, какой обход по группировкам? где дерево?

Wobland Спасибо тебе огромное! Заработало. Документ проводится, только вот, теперь вылезло другое: данные в регистр не записываются. Господи, ну я и чайник)))

Есть. Хозрасчетный, я так понял, имя регистра накопления?

это имя регистра бухгалтерии. под рукой взял.

Выборка = Запрос.Выполнить.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); надо в запросе делать итоги по какому-то полю по номенклатуре, в этом случае, — групповое поле, и итоговые поля (Количество и КоличествоОстаток) выбирать те которые понадобятся при обходе верхушки дерева, т.е. в первом цикле, а потом уже все остальное.

Дальше первого запроса в пакете даже смотреть не стал

ещё немного, и ты дочитаешь до ;)

Разобрался!!!Заработало!!Я спасён:)  Спасибо вам, что не остались равнодушными.

Да там запрос кривой — рано считает, что проблема решена. Синтаксические ошибки да, убраны, но   л о г и ч е с к и е   остались. Введи-ка 2-3 документа на одну и ту же номенклатуру — работает? Сколько списывает?

Обход по группировкам не нужен там был совершенно(использовал обынчый обход результата, и всё уложил в один цикл и на одной выборке. Так же сделал ЕСТЬNULL в запросе на КолчиествоОстаток. И ещё соединил таблицы в первом запросе))

Это Документ.ВводВЭксплуатацию КАК ВводВЭксплуатацию надо убрать вообще из запроса — для чего это нужно?

Вроде всё списывает. И ругается, если чего не хватает))) Запрос теперь выглядит так          «ВЫБРАТЬ

Это — рабочий вариант, только это зачем?

лучше сделать с группировками и обходу по итогам, потому что если у тебя в одной ТЧ будет несколько наименований номенклатуры? нормально отрабатывает? списывает все кроме этой? или останавливается на этой? проверяет дальше?

Вроде адекватно всё списывает. Если вдруг какой косяк вылезет — отпишусь.

+ +1 и сортировку по сроку годности, полагаю, надо сделать.

обычно в первую очередь списывается товар с минимальным сроком годности

может, показать автору, как я списывал по партиям с учётом срока годности в какой-то тестовой задаче? полезно будет?

а откуда в учете оборудования срок годности? о_О

да походу автор откуда -то сдернул верный алгоритм в модуле, но, до конца не разобравшись, избавился от второй группировки, теперь у него получается, на каждую строку документа в результирующей таблице может возникнуть несколько строк с разными сроками годности. соответственно, и спишется она есколько раз (или не спишется, не пройдя проверку) ну хотя бы срок эплуатации до, это же не кефир. странно делать для него измерение.

а сообщение пользователю-таки про срок годности

ну как-то да, странный он какой-то. но мне вдаваться лениво. по меньшей мере до ужина ;)

Объясните нубу, как оно работает(((

хм, а подумать если? кста,МИН — это минимум

с тебя 500 рублей за консультацию

Шо то безнадежно туплю под конец дня)))

Тэги: 1С 8

Комментарии доступны только авторизированным пользователям

Добрый день, уважаемые участники!

Прошу вашего совета и помощи в работе с 1С.
1С Бухгалтерия предприятия (базовая), платформа 1С:Предприятие 8.3 (8.3.7.1860),  релиз 3.0.43.100.
Формирую сведения в ПФР за 4 квартал 2015. Необходимо откорректировать стаж у одного из сотрудников, который брал отпуск за свой счет на месяц. По умолчанию программа ставит период: 01.10.2015 — 31.12.2015. При попытке добавить строку к стажу появляется сообщение:

«Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата)»

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

В чем может быть дело и как исправить? Заранее благодарю за ваши отклики.

г. Благовещенск173 360 баллов

Добрый день!

Цитата (Тэтрис):платформа 1С:Предприятие 8.3 (8.3.7.1860)

Цитата (Рекомендации Бухгалтерия предприятия, редакция 3.0, версия 3.0.43.100):Рекомендуется использовать версию 1С:Предприятие 8.3 не ниже 8.3.6.2449.

Попытайтесь запустить на другой платформе.

Не заполняются накладные после обновления 1С Предприятие 8.3

Заполнить и подать уведомление об исчисленных суммах налогов и взносов

Правильно ли я вас поняла, что дело, скорее всего, в платформе и вы рекомендуете платформу 8.3.6.2449, т.е. откатить платформу назад?

г. Благовещенск173 360 баллов

Спасибо за Ваш совет, Ann-Nancy, так и сделаю.

Заполняйте платежки с актуальными на сегодня КБК, кодами дохода и другими обязательными реквизитами

Для Каждого Строка Из ТабличноеПоле1 Цикл
     ф = 0; //дни месяца
      от = 0; //дни отпуска
      бл = 0;   //дни болезни
      бс = 0;   //дни без содержания
      ко = 0; //дн командировки
      ЧМ = 0;  //часы месяца
      ЧМ1 = 0; //часы 1 половина
      ЧМ2 = 0; //часы 2 половина
      ДМ1 = 0; //дни 1 половина
      ДМ2 = 0; //дни 2 половина

                           Запрос = Новый Запрос;
      Запрос.Текст =
      «ВЫБРАТЬ
      |   ОтклоненияВГрафиках.ВидОтклонения,
      |   ОтклоненияВГрафиках.ДатаНачала,
      |   ОтклоненияВГрафиках.ДатаОкончания
      |ИЗ
      |   РегистрСведений.ОтклоненияВГрафиках КАК ОтклоненияВГрафиках
      |ГДЕ
      |   ОтклоненияВГрафиках.Сотрудник = &Сотрудник
      |   И ОтклоненияВГрафиках.Организация = &Организация
      |   И ОтклоненияВГрафиках.Регистратор.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания»;
      Запрос.УстановитьПараметр(«Сотрудник»,Строка.ФИО);
      Запрос.УстановитьПараметр(«Организация»,Организация);
      Запрос.УстановитьПараметр(«ДатаНачала»,НачалоМесяца(ЭлементыФормы.ДатаПериода.Значение));
      Запрос.УстановитьПараметр(«ДатаОкончания»,КонецМесяца(ЭлементыФормы.ДатаПериода.Значение));
      ТЗ = Запрос.Выполнить().Выбрать();

           ТЗ = Запрос.Выполнить().Выбрать();
     //+

            Пока ТЗ.Следующий() Цикл

          Для Номер = 1 По 31 Цикл
         Колонка = Строка[«Колонка» + Номер];

                                     //Если ТЗ.Количество() > 0 Тогда
         Если (Номер >= ДЕНЬ(ТЗ.ДатаНачала)) и (Номер <= ДЕНЬ(ТЗ.ДатаОкончания)) и (Колонка = «я») Тогда
               Колонка = НРег(Лев(ТЗ.ВидОтклонения,2));
               Строка[«Колонка» + Номер] = Колонка;
               //Строка[«Время» + Номер] = 0;
        // КонецЕсли;
         Если Колонка = «я» Тогда
          ф = ф + 1;
          ЧМ = ЧМ + Строка[«Время» + Номер];

               ИначеЕсли Колонка = «бс» Тогда
          бс = бс+1;

               ИначеЕсли Колонка = «от» Тогда
          от = от +1;

              ИначеЕсли Колонка = «бл» Тогда
          бл = бл + 1;
       ИначеЕсли Колонка = «ко» Тогда
          ко = ко+1;
       КонецЕсли;

              Если Номер = 15 Тогда
          ЧМ1 = ЧМ;
          ДМ1 = ф;
       КонецЕсли;

                           КонецЕсли;

                            КонецЦикла;
      //
//      Строка.ОтработаноМесяцДней = ф;
      Строка.Отпуск = от;
      Строка.Болезнь = бл;
      Строка.ОтпускБезСодержания = бс;
      Строка.Командировка = ко;
      //Строка.ОтработаноМесяцЧасов = ЧМ;
//      Строка.Отработано1дней = ДМ1;
     // Строка.Отработано1часов = ЧМ1;
     // Строка.Отработано2дней = ф — ДМ1;
     // Строка.Отработано2часов = ЧМ — ЧМ1;

                     КонецЦикла;

                 //+   
КонецЦикла;

Ermak
22.01.2016 10:02 Прочитано: 4804

Доброе утро! При добавлении документа выдает ошибку. Регистра сведений не заполнен.Ошибка при выполнении обработчика — ‘ОбработкаПроведения’по причине:{Документ.ЗаявкаНаРемонт.МодульОбъекта(36)}: Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата)

Код 1C v 8.х

 Процедура ОбработкаПроведения(Отказ, Режим)

Фильтр = Новый Структура();     
Фильтр.Вставить("Маршрут",ЛицевойСчет.Участок);
КоличествоЗ=РегистрыСведений.ПланировщикРемонтныхЗаявок.ПолучитьПоследнее(КонецДня(Дата),Фильтр).Количество;

Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
              | СтатусЗаявокНаРемонт.Период КАК Период,
              | СтатусЗаявокНаРемонт.Участок КАК Маршрут,
              | КОЛИЧЕСТВО(СтатусЗаявокНаРемонт.Статус) КАК Количество,
              | СтатусЗаявокНаРемонт.ЛицевойСчет.АбонентскийУчасток КАК АбонентскийУчасток
              |ИЗ
              | РегистрСведений.СтатусЗаявокНаРемонт КАК СтатусЗаявокНаРемонт
              |ГДЕ
              | СтатусЗаявокНаРемонт.Участок =Маршрут
              | И СтатусЗаявокНаРемонт.Период МЕЖДУДатаНач ИДатаКон
              | И СтатусЗаявокНаРемонт.ЛицевойСчет.АбонентскийУчасток =АбонентскийУчасток
              |
              |СГРУППИРОВАТЬ ПО
              | СтатусЗаявокНаРемонт.Период,
              | СтатусЗаявокНаРемонт.Участок,
              | СтатусЗаявокНаРемонт.ЛицевойСчет.АбонентскийУчасток";

Запрос.УстановитьПараметр("Маршрут",ЛицевойСчет.Участок);
Запрос.УстановитьПараметр("АбонентскийУчасток",АбонентскийУчасток);
Запрос.УстановитьПараметр("ДатаНач",НачалоДня(Дата));
Запрос.УстановитьПараметр("ДатаКон",КонецДня(Дата));
Результат = Запрос.Выполнить().Выбрать();

Пока Результат.Следующий() Цикл              
КоличествоЗаявок=Результат.Количество;
КонецЦикла;

Если КоличествоЗаявок < КоличествоЗ или Не ЗначениеЗаполнено(КоличествоЗ) Тогда
Движение = Движения.СтатусЗаявокНаРемонт.Добавить();
Движение.Период = НачалоДня(Дата);
Движение.ДатаЗаявки=НачалоДня(Дата);
Движение.Участок=ЛицевойСчет.Участок; 
Движение.Заявка = Ссылка;
Движение.ЛицевойСчет = ЛицевойСчет;
Движение.Статус=Перечисления.СтатусЗаявки.Новая;
Иначе
Предупреждение("На этот день количество заявок закончились!"+Символы.ПС+"Выберите другую дату.");
Отказ=Истина;
КонецЕсли;

КонецПроцедуры

Yandex
Возможно, вас также заинтересует

Реклама на портале

IBReiter
22.01.2016 10:17 Ответ № 1

Ошибка в 36 строке — смотрите, какое там условие, оно у вас сравнивает несравнимое

Отладчиком сделайте остановку по ошибке и увидите какие типы у сравниваемых элементов и тогда уже решайте, что с этим делать

Подсказка: Вы можете добавить любую страничку в Избранное щелкнув по значку

  • Ошибка операция неприменима к операндам этого типа
  • Ошибка оплаты картой что то пошло не так error description is null
  • Ошибка операция не разрешена так как файлы ad ds lds не восстановлены
  • Ошибка оплаты картой на кассе эвотор
  • Ошибка операция не допускается если объект закрыт