powered by simpleCommunicator - 2.0.29     © 2024 Programmizd 02
Map
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Null object reference - ГЛЮК! Вопрос
22 сообщений из 22, страница 1 из 1
Null object reference - ГЛЮК! Вопрос
    #40076049
Skampf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Такой вопрос. Работала программа работала, все было отлично. Тут вдруг начала выдавать ошибку. Null object reference .

Суть такая, есть ОКНО winOne которое в em_1 показывает дату, через кнопку можно открыть окно winTwo.
У winTwo в OPEN() есть такая строчка ValData = winOne.em_1.text

Вообщем вопрос, почему с 2011 все работало, а тут произошло вот так. Причем если взять другие программы то такие связи вполне работают...
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40076059
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обычно надо писать if IsValid(winOne)...
Но скорее всего нужно слегка поменять
Вызвать из open через post функцияю, которая проверит и получит это значение
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40076127
Skampf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
spas2001
Обычно надо писать if IsValid(winOne)...
Но скорее всего нужно слегка поменять
Вызвать из open через post функцияю, которая проверит и получит это значение


Да дело даже не в валидации. А что могла случиться, что перестала работать связь между окнами? Добавлю, что окна находятся в разных pbl.
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40076145
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да дело и не в валидации))
Это так - чистописание
Например такое случалось в 3-х разных случаях
1. Проблемы с ОЗУ
2. Разные версии файлов PBVM
3. После установки нового патча среды РВ
Один раз перестало работать наследование (такое на 8-ке часто встречалось). Достаточно было открыть родительский скрипт в окне, посмотреть на него, закрыть и собрать заново - все начинало работать.
Просто я вам говорю, что в таком виде как я написал проблемы почти никогда не возникали.
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40076248
Skampf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
spas2001
Да дело и не в валидации))
Это так - чистописание
Например такое случалось в 3-х разных случаях
1. Проблемы с ОЗУ
2. Разные версии файлов PBVM
3. После установки нового патча среды РВ
Один раз перестало работать наследование (такое на 8-ке часто встречалось). Достаточно было открыть родительский скрипт в окне, посмотреть на него, закрыть и собрать заново - все начинало работать.
Просто я вам говорю, что в таком виде как я написал проблемы почти никогда не возникали.


Еще есть прикол, что запуск из под билдера работает все хорошо. После сборки.. Нет)
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40076402
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Собираете как? PBD или один exe? Опять же версии на сборочной и на машине где проверяете. Проверьте по-другому, перенесите функционал в кнопку и сразу все станет понятно.
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40076548
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Skampf
Суть такая, есть ОКНО winOne которое в em_1 показывает дату, через кнопку можно открыть окно winTwo.
У winTwo в OPEN() есть такая строчка ValData = winOne.em_1.text


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

Окно winOne должно открыть окно winTwo с помощью функции OpenWithParm передавая ссылку на себя параметром, а окно winTwo должно извлечь эту ссылку из Message.PowerObjectParm и работать только через нее.
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40076615
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky
Skampf
Суть такая, есть ОКНО winOne которое в em_1 показывает дату, через кнопку можно открыть окно winTwo.
У winTwo в OPEN() есть такая строчка ValData = winOne.em_1.text


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

Окно winOne должно открыть окно winTwo с помощью функции OpenWithParm передавая ссылку на себя параметром, а окно winTwo должно извлечь эту ссылку из Message.PowerObjectParm и работать только через нее.


Вот самый правильный подход
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40076761
Skampf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Anatoly Moskovsky
Skampf
Суть такая, есть ОКНО winOne которое в em_1 показывает дату, через кнопку можно открыть окно winTwo.
У winTwo в OPEN() есть такая строчка ValData = winOne.em_1.text


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

Окно winOne должно открыть окно winTwo с помощью функции OpenWithParm передавая ссылку на себя параметром, а окно winTwo должно извлечь эту ссылку из Message.PowerObjectParm и работать только через нее.


Да, про это я знаю. У нас так передаётся параметр на разграничение прав и много чего, но я работаю не один) 20 человек программистов... И примерно 150 человек работало до) Кто что писал поди разберись.

Вопрос, не в том как положено. А почему работало и вдруг перестало работать.

Если честно, я даже хз как оно собирается - спрашивал у админов, они тоже не знают.. Есть просто сервер для сборки и якобы до них написанный. Так и работает.
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40076813
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Skampf
Вопрос, не в том как положено. А почему работало и вдруг перестало работать.

Перестало работать в той же самой сборке программы, или перестало работать после пересборки программы?
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40076825
Skampf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Anatoly Moskovsky
Skampf
Вопрос, не в том как положено. А почему работало и вдруг перестало работать.

Перестало работать в той же самой сборке программы, или перестало работать после пересборки программы?


Просто перестала работать программа. Ее собрали пару недель назад, она работала работала. А в один прекрасный момент (конечно же на выходных) начала вываливать ошибку))

НО! Когда я открыл пбл, в попытках понять, что не так - я не понял.. Я кинул на сборку результат отрицательный..
Создал новую pbl и проверил. ТАМ ВСЕ РАБОТАЕТ... Окей, мб надо открыть другую пбл где так же сделана?

Открываю другую пбл, вот точно также сделано и работает! Даже пересобрал эту пбл и она работает.

Эту задачу делал другой человек и он решил эту проблему вот так:

Код: plaintext
1.
2.
3.
4.
5.
OPEN(w_info)

w_info.ID2 = ID

w_info.func_open()
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40076967
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Skampf
Просто перестала работать программа. Ее собрали пару недель назад, она работала работала.

Ну то есть не с 2011 года работала, а всего неделю.
Значит ищите что поменялось в коде перед той сборкой неделю назад.
Чудес не бывает.
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40079082
Skampf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Anatoly Moskovsky
Skampf
Просто перестала работать программа. Ее собрали пару недель назад, она работала работала.

Ну то есть не с 2011 года работала, а всего неделю.
Значит ищите что поменялось в коде перед той сборкой неделю назад.
Чудес не бывает.


Ничего в данном куске кода не менялось.
Как не бывает? а почему галочка на обновление dw слетает? чудеса и только
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40079371
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заходишь в запрос DW, ничего не меняешь, но если был запрос с нескольких таблиц и выходишь нажав ОК, а не отмену галочка обновления слетает
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40079520
Skampf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
spas2001
Заходишь в запрос DW, ничего не меняешь, но если был запрос с нескольких таблиц и выходишь нажав ОК, а не отмену галочка обновления слетает


Нет никто ничего не трогал. Слетает галочка на собранной pbl. Вот программа работала, а 1 мая перестала работать т.к. слетела галочка.

Это может быть связано с какими то изменениями в БД ?
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40079787
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чудес не бывает. Контроль версий есть? Резервные копии? Хоть что-то? Поднимите и сравните.
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40079798
Фотография Raven A
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поддерживаю spas2001

Хоть бинарно сравните (fc /b) "битую" версию pbd с резервной (надеюсь она у Вас есть)
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40080425
Skampf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Raven A
Поддерживаю spas2001

Хоть бинарно сравните (fc /b) "битую" версию pbd с резервной (надеюсь она у Вас есть)


При открытие резервной копии галочки тоже нету
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40080429
Skampf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
spas2001
Чудес не бывает. Контроль версий есть? Резервные копии? Хоть что-то? Поднимите и сравните.


Контроля версий нету. Резервные копии тоже без галочки причем любые.

Я вот думаю там же выбирает таблица в БД..

Если админи работали с сервером или с этой таблицей - мог ли билдер "потерять ее из поля зрения"?
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40080441
Фотография Raven A
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skampfПри открытие резервной копии галочки тоже нету
Я предложил сравнить а не открыть , причём сравнить "внешним" инструментом, поскольку открытие объекта в PB иногда может привести к изменению исходника, вне зависимости от ваших действий.
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40089827
Фотография ChV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Skampf

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

Согласен, что чудес не бывает. Вот несколько возможных вариантов :
1. В проекте не один объект winOne, а больше. При сборке и при разработке - могут быть разная очередность библиотек, а будет взят первый обнаруженный объект winOne
2. В объекте winTwo уже объявлен объект с именем winOne, но у которого совсем другой класс объекта
3. Перед открытием объекта winTwo произошло закрытие объекта winOne
...
Если есть система контроля версий или если использовать Debug - все решается легко и быстро.
...
Рейтинг: 0 / 0
Null object reference - ГЛЮК! Вопрос
    #40134140
Skampf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Raven A
skampfПри открытие резервной копии галочки тоже нету

Я предложил сравнить а не открыть , причём сравнить "внешним" инструментом, поскольку открытие объекта в PB иногда может привести к изменению исходника, вне зависимости от ваших действий.

Понял.

ChV
Skampf

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

Согласен, что чудес не бывает. Вот несколько возможных вариантов :
1. В проекте не один объект winOne, а больше. При сборке и при разработке - могут быть разная очередность библиотек, а будет взят первый обнаруженный объект winOne
2. В объекте winTwo уже объявлен объект с именем winOne, но у которого совсем другой класс объекта
3. Перед открытием объекта winTwo произошло закрытие объекта winOne
...
Если есть система контроля версий или если использовать Debug - все решается легко и быстро.


Кстати виновник найдет "человек". Он создал в своей библиотеке "что-то" и похерил несколько программ.
Перестали работать программы за которые отвечает ведущий, его и вызвали на работу.
А мне сообщили уже по факту прошедших выходных.

Особенно порадовало когда сказали, что руководитель сказал "у тебя" там что-то сломалось, хотя прекрасно знал об этой ситуации.

Дурные люди тут.. Надо валить...
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Null object reference - ГЛЮК! Вопрос
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]