Форум программистов, компьютерный форум, киберфорум
HCL Notes: Программирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.63/190: Рейтинг темы: голосов - 190, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 20.10.2008
Сообщений: 271

Как выловить предупреждение?

05.04.2009, 15:36. Показов 35504. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, коллеги.

Сразу оговорюсь, что код не мой, так что хаять, что так не делают не надо, ибо сам это знаю :(

Есть форма документа, в которой содержится около 20 подформ, куча различных вычисляемых полей с 20-40 строчными собаками... В двух словах ужас полный ;)
Проблема такова, что у удаленных пользователей возникает предупреждение "Поле слишком велико (32 КБайт) или слишком велики формулы для значений в столбцах и отбора". Причем, когда я открываю этот документ от себя, такой ошибки не получаю, из чего сделал вывод, что проблема либо при обращении к справочнику, либо где-то имя какое-то некорректное у них... Ошибка очевидно вылетает либо при сохранении документа, либо на uidoc.RefreshHideFormulas. Ограничений на UpdateBy и Revisions стоят.

Но вопрос в другом. Как можно выловить при вычислении какого поля выскакивает ошибка?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.04.2009, 15:36
Ответы с готовыми решениями:

Как выловить переменную id из живого поиска
Есть база данных с таблицами people, и event. В таблице people поля: Фамилия, Имя, Отчество и др + соответственно id (автоинкремент). ...

Как выловить, что вызывает Exception?
Программа принимает данные через DDE и пишет их в StringGrid. Может часами висеть в свернутом виде и нормально работать (по таймеру в 5...

Как можно выловить ошибки в коде АСП?
Как можно выловить ошибки в коде АСП?

25
0 / 0 / 0
Регистрация: 04.10.2007
Сообщений: 2,977
05.04.2009, 15:40
Цитата Сообщение от abbatik
Сразу оговорюсь, что код не мой
та ладно, не отмазывайся ;)



Цитата Сообщение от abbatik
Как можно выловить при вычислении какого поля выскакивает ошибка?
а в самом сообщении нету имени поля?.. тогда только методом вырезания/возвращения полей...

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



Цитата Сообщение от abbatik
Ошибка очевидно вылетает либо при сохранении документа, либо на uidoc.RefreshHideFormulas
что тут очевидно-то, если есть варианты? ;) ты сядь там с юзером и пусть он тебе наклацает ошибку...

зы: а что за продукт? массовый или самопал? интересно :(
0
1 / 1 / 0
Регистрация: 04.08.2006
Сообщений: 2,950
05.04.2009, 15:48
abbatik
What is the maximum size of text fields? 32KB (storage); 32KB displayed in a views column


и ненужным полям руками проставлять IsSummary = false
0
0 / 0 / 0
Регистрация: 20.10.2008
Сообщений: 271
05.04.2009, 15:57
Цитата Сообщение от Akupaka
а в самом сообщении нету имени поля?.. тогда только методом вырезания/возвращения полей...
Нет, предупреждение лотусовое родное.



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



Цитата Сообщение от Akupaka
что тут очевидно-то, если есть варианты? ;) ты сядь там с юзером и пусть он тебе наклацает ошибку...
Ну если учесть, что юзер у заказчика и очень далеко, то это не вариант.



Цитата Сообщение от Akupaka
зы: а что за продукт? массовый или самопал? интересно :(
Лет 10 назад это был БОСС-Референт ;) Сейчас это мутант-гибрид ;)




Цитата Сообщение от Morpheus
abbatik
What is the maximum size of text fields? 32KB (storage); 32KB displayed in a views column


и ненужным полям руками проставлять IsSummary = false
Спасибо за совет, но проблема в том, что желательно точно знать какое поле/я выдают это предупреждение.
0
0 / 0 / 0
Регистрация: 04.10.2007
Сообщений: 2,977
05.04.2009, 16:34
Цитата Сообщение от abbatik
Ну если учесть, что юзер у заказчика и очень далеко, то это не вариант
ну, если заказчик уведомляет об ошибке, значит он подписал договор на поддержку, если есть договор на поддержку, значит ошибка должна быть описана заказчиком вплоть до действий, которые он выполняет...
что делает заказчик? на какой базе ошибка? какое (предполагаемое) действие предшествует ошибке?



Цитата Сообщение от abbatik
желательно точно знать какое поле/я выдают это предупреждение
Морфеюс, ты просто обязан сказать человеку в каких полях эта ошибка! :(
0
0 / 0 / 0
Регистрация: 20.10.2008
Сообщений: 271
05.04.2009, 16:43
Цитата Сообщение от Akupaka
ну, если заказчик уведомляет об ошибке, значит он подписал договор на поддержку, если есть договор на поддержку, значит ошибка должна быть описана заказчиком вплоть до действий, которые он выполняет...
что делает заказчик? на какой базе ошибка? какое (предполагаемое) действие предшествует ошибке?
Ошибка возникает при сохранении документа, либо после нажатия кнопки, в которой присутствует функция Call uidoc.RefreshHideFormulas



Цитата Сообщение от Akupaka
Морфеюс, ты просто обязан сказать человеку в каких полях эта ошибка! ;)
Я понимаю, что у вас хорошее настроение, но если сказать по существу нечего, то прошу не флудить, ибо это мешает отслеживанию ответов :(
Спасибо.
0
0 / 0 / 0
Регистрация: 04.10.2007
Сообщений: 2,977
05.04.2009, 16:57
Цитата Сообщение от abbatik
Ошибка возникает при сохранении документа, либо после нажатия кнопки, в которой присутствует функция Call uidoc.RefreshHideFormulas
ты не обижайся, но это не описание того, что делает пользователь и так тебе не поможет никто!
в Боссе ну просто дофига действий, которые сохраняют документ, остальные его рефрешат :(
если ты хочешь помощи, а не флуда, то потрудись выяснить что предшествует ошибке! я попросил хотя бы название базы, что юзер тыкает, а ты даже этого не хочешь сказать! ну как тут не пофлудить ;)

вот тебе навскидку, в Боссе много проблем связанных с действиеми работающими с ознакомлением с документом. там заполняется туча полей именами и унидами.
0
0 / 0 / 1
Регистрация: 30.06.2007
Сообщений: 2,153
05.04.2009, 17:01
Ну а если экспортнуть документ, видно, какое поле потенциально может переполниться (т.е. содержит много данных)?
0
0 / 0 / 0
Регистрация: 04.10.2007
Сообщений: 2,977
05.04.2009, 17:10
Цитата Сообщение от Omh
Ну а если экспортнуть документ, видно, какое поле потенциально может переполниться (т.е. содержит много данных)?
я могу погадать по этой гуще, но ничего не обещаю ))
хотя не факт, поля могут заполняться уже после открытия, а сохранить с переполнением не даст...
0
0 / 0 / 0
Регистрация: 20.10.2008
Сообщений: 271
05.04.2009, 17:16
Цитата Сообщение от Akupaka
ты не обижайся, но это не описание того, что делает пользователь и так тебе не поможет никто!
в Боссе ну просто дофига действий, которые сохраняют документ, остальные его рефрешат ;)
если ты хочешь помощи, а не флуда, то потрудись выяснить что предшествует ошибке! я попросил хотя бы название базы, что юзер тыкает, а ты даже этого не хочешь сказать! ну как тут не пофлудить ;)

вот тебе навскидку, в Боссе много проблем связанных с действиеми работающими с ознакомлением с документом. там заполняется туча полей именами и унидами.
Да я не обижаюсь Я вообще не обидчевый
А по поводу действий, я же не спрашивал где искать, а спросил возможно ли вычислить поле, из-за которого эта ошибка возникает. Ошибка Лотусовая и я думаю всем более-менее понимащим разработчикам понятно, почему она возникает
Проблема явно в формуле либо вычисляемого поля, либо диалог бокса..





Цитата Сообщение от Omh
Ну а если экспортнуть документ, видно, какое поле потенциально может переполниться (т.е. содержит много данных)?
Нет, не видно... Если было бы все так просто...



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

Кстати лотусня по идеи должна резать поле (думал так и вычислить где данные явно прерванные), но тут как-то все очень странно...
Люди до меня тут работающие, вообще рассказывают страшные истории про то, что документ даже с переполненным полем сохранялся и потом его невозможно было открыть, но я это не видел...
0
0 / 0 / 0
Регистрация: 04.10.2007
Сообщений: 2,977
05.04.2009, 17:24
Цитата Сообщение от abbatik
возможно ли вычислить поле, из-за которого эта ошибка возникает
возможно, если:
- выяснить у заказчика, что он сделал, как добился ошибки
- самому протестировать весь функционал

если прорабатывать второй вариант, то тебе нужно около 6-7 тестеров на полторы-две недели, и это будет только поверхностно, и врядли получите ошибку переполенения, т.к. нужно забить кучу данных в систему, чтобы съимитировать переполнение...

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

зы: я уже говорил, обрати внимание на поля, что сожержат инфу о пользователях, особенно связанные с ознакомлением!
зы2: я не понял, вам хоть какую-то инфу от заказчика дали?!
зы3: в какой компании ты работаешь?



Цитата Сообщение от abbatik
Ошибка Лотусовая и я думаю всем более-менее понимащим разработчикам понятно, почему она возникает smile.gif
Проблема явно в формуле либо вычисляемого поля, либо диалог бокса..
думаю, что заказчика такой ответ не удовлетворит



Цитата Сообщение от abbatik
Люди до меня тут работающие, вообще рассказывают страшные истории про то, что документ даже с переполненным полем сохранялся и потом его невозможно было открыть, но я это не видел...
бредово звучит, при мне разработчик получал ошибку при вызове nd.Save(), при переполнении...
0
0 / 0 / 0
Регистрация: 01.04.2007
Сообщений: 304
05.04.2009, 17:35
если нужно найти поле на которое ругается что оно слишком большое то почемубы не зделать агента который переберает все поля и смотрит их размер notesItem.ValueLength и если он больше 32кв то выводит меседжбокс или ещё чтото.
на худой конец можно в форму вмаунтить шоб док из UI выдернуть без напрягав.
0
0 / 0 / 0
Регистрация: 04.08.2008
Сообщений: 408
05.04.2009, 17:45
Вопрос из книжки со сказками... На удаленном рабочем месте в непонятной базе что-то не работает...

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

Самый простой способ это чтобы клиент показал, что и где и как у него ломается... Если он далеко и есть договор на поддержку, просто обязаны быть настроены средства для удаленного администрирования.
0
Krjymytyk
05.04.2009, 17:52
Эта ошибка обычно возникает при попытке сохранения текстового мультивалуе поля. По дизайну отлавливаем такие поля, там может быть что-нить похожее на слив из DBColumn.
Как вариант проверки, ихо, на боевой базе построить вид с такими найденными полями с выводом их размера. Если статистика большая то можно вычислить потенциальное опасное поле.
ЗЫ: Тут другое эта беда довольно хреново лечится.
0 / 0 / 0
Регистрация: 04.10.2007
Сообщений: 2,977
05.04.2009, 18:15
Цитата Сообщение от xalet
Вопрос из книжки со сказками...
собсно, совет тоже ))



Цитата Сообщение от xalet
Самый простой способ это чтобы клиент показал, что и где и как у него ломается...
"мы поедем, мы помчимся, на оленях..."



Цитата Сообщение от xalet
Если он далеко и есть договор на поддержку, просто обязаны быть настроены средства для удаленного администрирования.
мечтатель... в лучшем случае пользователь может сказать, что он нажал!



Цитата Сообщение от Krjemilek
Эта ошибка обычно возникает при попытке сохранения текстового мультивалуе поля
случаи при которых возникает ошибка были описаны самим автором, одно из простых и логичных решений подсказал Морфеюс.
вопрос не "почему ошибка?", а "какое поле переполнилось?"... но, спасибо за участие



Цитата Сообщение от Krjemilek
Как вариант проверки, ихо, на боевой базе построить вид
нет доступа к боевой базе...

abbatik, смари какую я тебе отмазку нашел
http://www.kadastr.ru/sed/foru... al/363608/

есть новости по ошибке?
0
0 / 0 / 0
Регистрация: 20.10.2008
Сообщений: 271
05.04.2009, 18:57
Угу.. ссылку на кадастр видел, поржал

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

Проблема осложняется, что у заказчика огромная распределенная сеть, причем не только в России и ошибка возникает только в одном из регионов, доступа к которому у меня соответсвенно нет.
0
Krjymytyk
06.04.2009, 10:48
Как вариант сделать в полях проверку размера полученных списков и если более 32 то слать письмо разработчику письмо типа "Беда в поле XXX". Это если дадут боевой шаблон на время подправить.
0 / 0 / 0
Регистрация: 04.10.2007
Сообщений: 2,977
06.04.2009, 11:03
я вам еще одну умную вещь скажу...
abbatik, тебе это пригодится в контексте текущей ошибки, когда будете исправлять, то задумайтесь над этим тоже...
так вот... объем информации в summary-полях всего документа не может превышать 64КБ (в реале может колебаться в районе 58-62, т.е. часть тратится на служебные данные), соотв. сохранить документ в котором есть поля с большим кол-вом инфы, не превышающем 32КБ в каждом, но в сумме превышающим 64КБ, тоже НЕ получится




Цитата Сообщение от Krjemilek
слать письмо разработчику
как дети малые а смс не надо слать, что было отправлено письмо? ;)
что за фантазии? а потом получить иск потому что продукт занимается почтовой рассылкой ;)

если подобное делать, то уже не так, а цивильно, как остальные делают - сбор данных, в княпкой, которая формирует отчет в службу поддержки...
0
Krjymytyk
06.04.2009, 12:52
Цитата Сообщение от Akupaka
как дети малые а смс не надо слать, что было отправлено письмо? ;)
что за фантазии? а потом получить иск потому что продукт занимается почтовой рассылкой ;)
Я имел ввиду экстренное нахождение ошибки из серии "бухгалтерия стоит, начальник IT-отдела мылит веревку" - тут не до реверансов. Еще более действенно сделать звонок клиенту пусть под Вашим чутким руководством при возникновении ошибки посмотрит размеры проблемных айтемов в свойствах документа (до сохранения разумеется ну и если не документ нью), накрайняк нарисовать пошаговый гомикс "Ваши действия при возниконовении ошибки >32".

To Akupaka: Спасибо за ликбез про 64К. Проверил. Really.
0 / 0 / 0
Регистрация: 20.10.2008
Сообщений: 271
06.04.2009, 13:07
Цитата Сообщение от Krjemilek
Как вариант сделать в полях проверку размера полученных списков и если более 32 то слать письмо разработчику письмо типа "Беда в поле XXX". Это если дадут боевой шаблон на время подправить.
Во-первых вряд ли дадут, во вторых куда прописывать проверку? Если поля вычисляеиые особенно



Цитата Сообщение от Akupaka
я вам еще одну умную вещь скажу...
abbatik, тебе это пригодится в контексте текущей ошибки, когда будете исправлять, то задумайтесь над этим тоже...
так вот... объем информации в summary-полях всего документа не может превышать 64КБ (в реале может колебаться в районе 58-62, т.е. часть тратится на служебные данные), соотв. сохранить документ в котором есть поля с большим кол-вом инфы, не превышающем 32КБ в каждом, но в сумме превышающим 64КБ, тоже НЕ получится



как дети малые ;) а смс не надо слать, что было отправлено письмо? ;)
что за фантазии? а потом получить иск потому что продукт занимается почтовой рассылкой ;)

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



Цитата Сообщение от Krjemilek
Я имел ввиду экстренное нахождение ошибки из серии "бухгалтерия стоит, начальник IT-отдела мылит веревку" - тут не до реверансов. Еще более действенно сделать звонок клиенту пусть под Вашим чутким руководством при возникновении ошибки посмотрит размеры проблемных айтемов в свойствах документа (до сохранения разумеется ну и если не документ нью), накрайняк нарисовать пошаговый гомикс "Ваши действия при возниконовении ошибки >32".

To Akupaka: Спасибо за ликбез про 64К. Проверил. Really.
Я тебя понял, спасибо.

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

Всем спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.04.2009, 13:07
Помогаю со студенческими работами здесь

HtmlAgilityPack. Не могу понять, как выловить div
Адрес нужной страницы : https://www.avito.ru/petrozavodsk/bytovaya_elektronika Код HTML (картинка во вложении) 1. точка входа 2....

Как выловить троян hphWebShell NCD на сайте
Здравствуйте. Подскажите, пожалуйста, как выловить троян hphWebShell NCD на сайте. Можно ли его удалить не удаляя зараженный файл?

Как поймать (выловить) появление элемента а некоторым известным id
Всем здравствуйте/привет! :gwink: Ситуация следующая: Есть страничка, в которую определенная функция (трогать которую категорически...

Как выловить позицию курсора, когда приложение свёрнуто?
Как выловить позицию курсора, когда приложение свёрнуто? По идее можно запустить Хук из dll. Но как конкретно из сообщений мыши...

Как выловить причину ошибки сервлета с обращением к MySQL?
Пытаюсь написать сервлет с обращением к MySQL. В результате в браузер выводится что было прописано до коннекта к БД (<HTML> и пр.), а...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru