Ошибка получения значения условного разделения

   vativan

03.08.14 — 09:52

После перегрева ноутбука накрылась база 1С Предприятие 8.3. Нужна помощь по восстановлению. Выдает ошибку:

Идентификация пользователя не выполнена

по причине:

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

PS: Через конфигуратор тестирование и исправление, chdbfl.exe не помогает

   Wobland

1 — 03.08.14 — 10:00

долго название ветки сочинял, ничего умней не сочинилось, да?

   vativan

2 — 03.08.14 — 10:02

1 сек

   vativan

3 — 03.08.14 — 10:05

если можешь помочь я буду рад

   IamNotAlexy

4 — 03.08.14 — 10:10

я бы начал с обновления платформы.. на самую крайнюю…

   vativan

5 — 03.08.14 — 11:05

обновил на 8.3.5.1098

   Rlogin

6 — 03.08.14 — 11:16

Очистка кэша и выгрузка/загрузка в тестовую базу не помогает ?

   dmtrpv

7 — 03.08.14 — 11:35

Попробуй базу запустить на другом компьютере.

   vativan

8 — 03.08.14 — 11:44

я на другом компе и делаю т.к ноут под 70 градусов

чистка кэша и выгрузка/загрузка в тестовую базу не помогает ?неа

   Karavanych

9 — 03.08.14 — 11:48

регистры работают при температуре от 5-60 градусов :)))

выше плавятся, ниже кристализуются и восстановлению не подлежат :)

   vativan

10 — 03.08.14 — 11:59

ну спс обрадовали))))

   IamNotAlexy

11 — 03.08.14 — 12:02

(0) удали базу из списка добавь заново и попробуй открыть

   IamNotAlexy

12 — 03.08.14 — 12:03

(9) если регистр накопления сильно нагреть до критических температур  и сильно сжать -то регистр накопления захватив ресурсов и измерений из близлежащих регистров бухгалтерии и превращается в регистр расчетов..

   MaxS

13 — 03.08.14 — 12:08

Фоновое задание нужно было в базу поставить. Внешнюю обработку, например.

Если ЭтоНоутбук() И НоутбукПерегревается() Тогда

    ЗавершитьРаботуСистемы(Фиг);

КонецЕсли;

(9) В 1С нужно письмо написать — на какую температуру рассчитаны метеданные такой-то конфигурации. Пришлют доктора, он решит вопрос.

   Крошка Ру

14 — 03.08.14 — 12:17

Из бэкапа восстановить уже предлагали?

   dmtrpv

15 — 03.08.14 — 12:41

Что значит chdbfl.exe не помогает? Пишет что ошибок не обнаружено или что?

   vativan

16 — 03.08.14 — 12:58

да не обнаружено

   dmtrpv

17 — 03.08.14 — 13:17

При запуске Тестирования и исправления галочки все ставили?

   dmtrpv

18 — 03.08.14 — 13:18

   vativan

19 — 04.08.14 — 12:24

ИЗ 1С посмотрели сказали не восстановить бухгалтер наказан

   SeiOkami

20 — 04.08.14 — 12:36

Если что, то можешь мне на мыло выслать. Как-то я уже восстанавливал базу с таким же вердиктом от 1С. Могу попробовать восстановить.

   SeiOkami

21 — 04.08.14 — 12:37

Оплату не требую — на интерес берусь )

   vativan

22 — 04.08.14 — 13:09

дайте пож. вашу почту или могу дать удаленный доступ

   SeiOkami

23 — 04.08.14 — 13:15

В карточке почта

   SeiOkami

24 — 04.08.14 — 13:16

SeiOkami@yandex.ru

   SeiOkami

25 — 04.08.14 — 13:16

Удалённый доступ не так удобно, ибо нужно с временем состыковываться, а с этим в последнее время туго =(

   SeiOkami

26 — 05.08.14 — 16:36

Насколько я понял, восстановить базу удалось. По крайней мере, у меня она стала запускаться, а там уже данные я не проверял.

Совет тем, кто столкнётся с такой фигнёй. Чистите пользователей, а затем прогоняйте тестированием со всеми галочками. Если после обычного удаления пользователей и тестирования база не ожила, то добавьте заново одного пользователя-бога. + На крайняк, можно чистить именно таблицу пользователей при помощи программулинки, которая 1CD файлы редактирует.

+ Не думайте, что если вы один раз сделали тестирование и исправлени и не помогло, то его делать более нет смысла. Я за весь процесс восстановления запускал его три раза — после третьего база запустилась. Никогда не знаешь, как именно сможет тестирование помочь и в какой момент =)

   Azverin

27 — 05.08.14 — 16:44

(26) респект

   France

28 — 05.08.14 — 16:55

(26) пользователи не вынесли высокой температуры.. а грешили на регистры..

   fmrlex

29 — 05.08.14 — 17:00

(28) В техподдержку 1С напишите ктонть, пусть термовыносливость пользователей повысят.

   Кай066

30 — 05.08.14 — 17:04

(29) знаем мы ваш 1С, тогда на морозе таблицы сыпаться начнут

   PLUT

31 — 05.08.14 — 17:07

(19) пятнично

вна украине бардак, виновата РФ

  

ifso

32 — 05.08.14 — 17:08

(29) прежде не забудьте выключить или вытащить паяльник

HI,

In one of the SSIS package, we have conditional split where we have included the following condition:

YEAR((DT_DBDATE)TS) < 1753

here TS value is taken from flat file and its value is like like 2008-12-09-18.34.07.560041 and its type is DT_STR.

While package execution, it is throwing the following error:

[TS [4629]] Error: An error occurred while evaluating the function.

[TS [4629]] Error: SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR.  The «component «TS» (4629)» failed because error code 0xC0049067 occurred, and the error row disposition
on «output «E400″ (4676)» specifies failure on error. An error occurred on the specified object of the specified component.  There may be error messages posted before this with more information about the failure.

[SSIS.Pipeline] Error: SSIS Error Code DTS_E_PROCESSINPUTFAILED.  The ProcessInput method on component «TS» (4629) failed with error code 0xC0209029 while processing input «Conditional Split Input» (4630). The identified
component returned an error from the ProcessInput method. The error is specific to the component, but the error is fatal and will cause the Data Flow task to stop running.  There may be error messages posted before this with more information about the
failure.

Please suggest.


Porus

Я создал этот простой пакет SSIS: img1 Это мой условный раскол: img2
Это настройка вывода ошибок: img3 Я получаю эту ошибку при запуске:

[ErrorTable [52]] Предупреждение. Строки, отправленные на выход(ы) ошибок, будут потеряны. Добавьте новые преобразования потока данных или места назначения для получения строк ошибок или перенастройте компонент, чтобы прекратить перенаправление строк в выходные данные ошибок.

До того, как я получил эту ошибку, она создавала таблицу ошибок, но не записывала никаких строк, поэтому я изменил ее на строку перенаправления, и теперь у меня есть эта ошибка. Буду благодарен за любую помощь.

1 ответ

Я только что столкнулся с той же проблемой и думаю, что нашел ответ.

Результатом условного разделения должен быть не красный путь «Ошибка», а другой выходной путь (синий) к файлу «Ошибка».

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

Я учусь здесь, но я предполагаю, что красный путь «ошибки» предназначен для реальных проблем с данными, а не для условных функций разделения.

Надеюсь, это поможет! я


1

Gene Hayes
29 Мар 2022 в 06:41

#sql-server #ssis #conditional-statements

#sql-server #ssis #условные операторы

Вопрос:

Я искал ответ на мою конкретную проблему перед публикацией. Ничего не найдено. У меня есть условное разделение в SSIS, которое вставляет и обновляет, за исключением того, что, похоже, при каждом запуске обновляется более 250 строк, независимо от того, было ли сделано обновление для источника или нет. Вставка работает правильно. Но это работает только тогда, когда я «игнорирую ошибку» при условном разделении, в противном случае разделение » оценивается как NULL, но для «Условного разделения» требуется логический результат » появляется ошибка. Есть идеи о том, как я могу это исправить? Мое условное разделение выглядит следующим образом:

 UPDATE = [Copy of ORDER_TYPE] != ORDER_TYPE || [Copy of WEEK] != WEEK || [Copy of GOAL] != GOAL || [Copy of WEEK_START] != WEEK_START || [Copy of WEEK_END] != WEEK_END || [Copy of DIVISION_DESC] != DIVISION_DESC || [Copy of SUB_ORDER_TYPE] != SUB_ORDER_TYPE
INSERT = ISNULL(ID) || ISNULL(WEEK) || ORDER_TYPE == ""
  

Я следовал этому руководству.

Комментарии:

1. В подобной ситуации мы не можем отладить происходящее, поскольку у нас нет доступа к вашим данным, вашему пакету и результатам выполнения вышеуказанных логических условий. Что я делаю, когда сталкиваюсь с подобной проблемой, так это добавляю одну, возможно, две задачи производного столбца перед условным разделением. Добавьте столбец IsInsert IsUpdate и используйте приведенные выше выражения. Теперь подключите свой производный столбец к условному разделению и замените два выражения, чтобы просто использовать наши производные столбцы. Добавьте средство просмотра данных непосредственно перед разделением, и вы сможете проверить, правильна ли ваша логика

2. Учитывая длину вашего выражения ОБНОВЛЕНИЯ, я бы разбил его на оценки отдельных столбцов в производном столбце перед производным столбцом, который я описал выше. Здесь вы будете прерывать проверку каждого изменения столбца, т.Е. Changed_ORDER_TYPE [Copy of ORDER_TYPE] != ORDER_TYPE , Что затем упрощает логику isUpdate до Changed_ORDER_TYPE || Changed_WEEK... Теперь, когда средство просмотра данных покажет вам точное условие, которое приводит к тому, что изменение ошибочно помечается. Основываясь на вашем комментарии «игнорировать ошибку», я предполагаю, что у вас есть условие с НУЛЕВЫМ сравнением, которое не охватывается ссылочной ссылкой.

3. Я понимаю, что вы имеете в виду. Я попробую и отчитаюсь. Спасибо

4. это сработало. Средство просмотра данных показало, что один из моих входных столбцов преобразуется как float , в то время как тип данных таблицы был int , поэтому значения с десятичными знаками отличаются от значений в таблице, поскольку они преобразуются как int . исправлено. Спасибо!

5. Рад слышать, что это исправлено. Я добавил свои комментарии в качестве ответа, поэтому у меня есть ссылка на то, как я устраняю неполадки, но вы можете добавить свой собственный ответ, поскольку вы его решили.

Ответ №1:

В подобной ситуации мы не можем отладить происходящее, поскольку у нас нет доступа к вашим данным, вашему пакету и результатам выполнения вышеуказанных логических условий. Что я делаю, когда сталкиваюсь с подобной проблемой, так это добавляю одну, возможно, две задачи производного столбца перед условным разделением. Первое, что я вызвал DER Action Flags , поскольку мы будем генерировать логические условия для действия, которое мы должны предпринять.

Добавьте столбец IsInsert IsUpdate и используйте приведенные выше выражения. Теперь подключите свой производный столбец к условному разделению и замените два выражения, чтобы просто использовать наши новые производные столбцы. Добавьте средство просмотра данных непосредственно перед разделением, и вы сможете проверить, правильна ли ваша логика.

Учитывая длину вашего выражения ОБНОВЛЕНИЯ, я бы разбил его на оценки отдельных столбцов в производном столбце, прежде DER Action Flags чем описывать выше. Назовите это чем-то вроде DER Compute Changed Flags , чтобы указать, что мы вычисляем, изменился ли столбец.

В этом производном компоненте столбца вы будете прерывать каждую проверку изменения столбца, т.е.

  • Changed_ORDER_TYPE [Copy of ORDER_TYPE] != ORDER_TYPE
  • Changed_WEEK [Copy of WEEK] != WEEK

Это упрощает IsUpdate логику для Changed_ORDER_TYPE || Changed_WEEK...

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

Основываясь на вашем комментарии «игнорировать ошибку», я предполагаю, что у вас есть условие с НУЛЕВЫМ сравнением, которое может не охватываться ссылочной ссылкой.

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

Это сработало. Средство просмотра данных показало, что один из моих входных столбцов преобразуется как float , в то время как тип данных таблицы был int , поэтому значения с десятичными знаками отличаются от значений в таблице, поскольку они преобразуются как int . исправлено.

Будущие читатели, проверьте свои типы данных (дважды щелкните строки соединителя в компоненте и выберите метаданные) правила последовательного преобразования данных as могут вас удивить неожиданным образом.

Вопрос

Я впервые использую это программное обеспечение. Я пытаюсь разделить значение, но оно показывает это, и у меня нет нулевого значения, когда я вижу свой источник, но когда я просматриваю его, оно показывает нулевое значение в первых 200 столбцах, но у меня только 15 столбцов.

Ошибка: 0xC020902B в задаче потока данных, Условное разделение [2]: Выражение «[Копия RATE_INR] > 1000» на «Условное разделение.Выводит[Случай 1]» оценивается как НУЛЕВОЕ значение, но для «Условного разделения» требуются логические результаты. Измените расположение строки ошибки на выходе, чтобы этот результат считался ложным (Игнорировать сбой) или перенаправить эту строку на вывод ошибки (Перенаправить строку). Результаты выражения должны быть логическими для условного разделения. Результат выражения NULL является ошибкой.

1

Лучший ответ

Вы используете следующее выражение в своем компоненте условного разделения:

[Copy of RATE_INR] > 1000

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

Вы можете решить эту проблему с помощью функции REPLACENULL:

REPLACENULL([Copy of RATE_INR],0) > 1000

Или

REPLACENULL([Copy of RATE_INR] > 1000, False)

На других языках

Эта страница на других языках

empty row

……………………………………………………………………………………………………

……………………………………………………………………………………………………

……………………………………………………………………………………………………

……………………………………………………………………………………………………

……………………………………………………………………………………………………

……………………………………………………………………………………………………

……………………………………………………………………………………………………

……………………………………………………………………………………………………

……………………………………………………………………………………………………

……………………………………………………………………………………………………

……………………………………………………………………………………………………

……………………………………………………………………………………………………

……………………………………………………………………………………………………

Популярное в этой категории

Популярные вопросы в этой категории

Понравилась статья? Поделить с друзьями:
  • Ошибка получения значения свойства подчиненного объекта
  • Ошибка получения доступа к файлам аллоды онлайн
  • Ошибка получения значения свойства объектов
  • Ошибка получения времени с сервера времени
  • Ошибка получения заявления ведомством мвд россии