|
Не отображается загруженное изображение на форме справочника | ☑ | ||
---|---|---|---|---|
0
NIGHTHUNTER
03.12.20
✎
04:56
|
Создаю элемент справочника. При открытии формы, жму на кнопку загрузить логотип. Выбираю файл, он появляется на форме.
Жму записать, закрыть. Но при открытии, на форме нет изображения. Хотя было. Я не понимаю в чем не точность и в чем не дочет. Подскажите пожалуйста. // &НаКлиенте Процедура ЗагрузитьЛоготип(Команда) ИмяФайла = ""; ПутьФайла = ""; ВыбранноеИмяФайла = ""; Если ПоместитьФайл(ПутьФайла, ИмяФайла, ВыбранноеИмяФайла) = Истина Тогда // Ф = Новый Файл(ВыбранноеИмяФайла); НаименованиеФайлаЛоготипа = Ф.ИмяБезРасширения; Логотип = ПутьФайла; УстановитьКартинку(); КонецЕсли; КонецПроцедуры // &НаСервере Процедура УстановитьКартинку() Объект.Наименование = НаименованиеФайлаЛоготипа; Записать(); ОбъектСправочникФайлы = Объект.Ссылка.ПолучитьОбъект(); ОбъектСправочникФайлы.Файл = Новый ХранилищеЗначения(ПолучитьИзВременногоХранилища(Логотип)); Логотип = ПоместитьВоВременноеХранилище(ОбъектСправочникФайлы.Файл.Получить()); КонецПроцедуры // &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Если ЗначениеЗаполнено(Объект.Ссылка) Тогда Логотип = ПолучитьНавигационнуюСсылку(Объект.Ссылка, "Файл"); Элементы.Логотип.РазмерКартинки = РазмерКартинки.АвтоРазмер; КонецЕсли; КонецПроцедуры // |
|||
1
hhhh
03.12.20
✎
08:52
|
(0) ну это выкинь
ОбъектСправочникФайлы = Объект.Ссылка.ПолучитьОбъект(); напиши ОбъектСправочникФайлы = РеквизитФормыВЗначение("Объект"); |
|||
2
NIGHTHUNTER
03.12.20
✎
08:57
|
(1) Ок, буду пробовать. Дело в том что работает в документе.
Я все несколько меняю на справочник. То есть загрузка изображения в реквизит справочника и вывод его на форму. И при открытии тоже. И все вроде работало, при разных изменениях, исправлениях. Тут смотрю, изображение загружаешь, появляется на форме элемента справочника. записываешь его закрываешь. Потом открываешь, там пусто на форме !!!! Вот озадачется от чего бы это. Буду пробовать. |
|||
3
acht
03.12.20
✎
09:04
|
||||
4
NIGHTHUNTER
03.12.20
✎
09:09
|
(1) Так это работает! Не работает , при открытии, на форме пусто
// &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Если ЗначениеЗаполнено(Объект.Ссылка) Тогда Логотип = ПолучитьНавигационнуюСсылку(Объект.Ссылка, "Файл"); Элементы.Логотип.РазмерКартинки = РазмерКартинки.АвтоРазмер; КонецЕсли; КонецПроцедуры // или (1) именно это и решает ? |
|||
5
NIGHTHUNTER
03.12.20
✎
09:11
|
(1) Это не влияет на открытие созданного элемента справочника и загруженного в него изображения.
Форма все равно стала открываться пустой ((( Что тут не так не понимаю. |
|||
6
NIGHTHUNTER
03.12.20
✎
09:13
|
все должно работать но что то не идет .
|
|||
7
hhhh
03.12.20
✎
09:33
|
(5) наверно, потому что вы два объекта пишете в одно и то же место. Они друг друга затирают.
|
|||
8
NIGHTHUNTER
03.12.20
✎
14:50
|
(7) Весь код, который отрабатывает в (0), как понять 2 объекта пишу в одно и тоже место?
Я создаю, новый элемент справочника. Добавляю на форму изображение, и в справочник. Оно появляется на форме. Нажимаю записать и закрыть, открываю, изображения на форме нету . |
|||
9
Галахад
гуру
03.12.20
✎
15:13
|
Если код верный, возможно проблема в реквизите формы.
|
|||
10
NIGHTHUNTER
03.12.20
✎
15:51
|
(9) Да все работало, потом раз и не стало. Да и реквизит я не трогал, тип картинка
буду разбираться |
|||
11
acht
03.12.20
✎
15:52
|
Мироздание намекает тебе, Андрей, что у него-то упорства-то побольше тебя будет.
|
|||
12
NIGHTHUNTER
04.12.20
✎
05:00
|
Изображения, которые загружены были до, выводятся на форме http://joxi.ru/p27pgLvCNZjeYA
То есть дело не в реквизите, а в том что я туда помещаю? ну так и помещаю я все нормально, поместил, на форме отразилось. Значит как и старые на форме должно быть изображение. Но если я загружаю новое. При повторном открытии его нет. Подскажите пожалуйста в чем дело? |
|||
13
NIGHTHUNTER
04.12.20
✎
05:13
|
http://joxi.ru/MAjnRMZHkYXelA
вот например, что при открытии идет на форму, когда отображается изображение вот то что уже не отображается при открытии, все в порядке, но почему то у новых элементов, ничего не выводится на форме при открытии, что может быть? http://joxi.ru/v29b7JoCpjke5A |
|||
14
NIGHTHUNTER
04.12.20
✎
05:16
|
то есть все так же, и должно работать но перестало (
смотрю и в документе, все также, что случилось, почему нет изображения при открытии справочника не понятно (( |
|||
15
Галахад
гуру
04.12.20
✎
05:23
|
Посмотрел еще раз, (1) дело говорит.
|
|||
16
hhhh
04.12.20
✎
05:42
|
(14) у тебя есть Объект, и есть Объект.Ссылка.ПолучитьОбъект(). Это два разных объекта.
|
|||
17
NIGHTHUNTER
04.12.20
✎
06:23
|
(16) ? Где? Я же говорю, сейчас когда загружаешь на форму все загружается!!!!!
И открывается что было загружено раньше. Но вот новое что я загружаю, загружается, но при открытии этого нет на форме. |
|||
18
NIGHTHUNTER
04.12.20
✎
06:24
|
(16)
ОбъектСправочникФайлы = Объект.Ссылка.ПолучитьОбъект(); это один объект, а это другой? ПолучитьНавигационнуюСсылку(Объект.Ссылка, "Файл") |
|||
19
hhhh
04.12.20
✎
06:43
|
(18) да, другой. И еще есть "Объект". Это третий объект. У тебя три объекта. И куда ты ивм пишешь кртинку, хрен ее знает, может и правильно.
|
|||
20
NIGHTHUNTER
04.12.20
✎
06:48
|
очистка кеша не помогла ((((
(19) странно все же работало на таком коде, где что исказилось что я не вижу, но срочно нужно поставить все на место! (19) как нужно то что бы работало все ????? |
|||
21
hhhh
04.12.20
✎
06:57
|
(20) не вые...ться, а перейти на бсп, как все люди. Открыть любую типовую и посмотреть, как там сделано. Или открыть демо-версию БСП.
|
|||
22
NIGHTHUNTER
04.12.20
✎
07:01
|
(21) Не думаю что вы актуальный совет даете.
И то что вы на меня говорите, лишено вообще смысла. Буду разбираться, сам. |
|||
23
NIGHTHUNTER
04.12.20
✎
07:03
|
(21) В трех соснах запутались что ли????
|
|||
24
hhhh
04.12.20
✎
07:05
|
(23) да, похоже на то.
|
|||
25
NIGHTHUNTER
04.12.20
✎
07:06
|
(24) Ну так давайте разберемся! Зачем ворочить начинать огромадные конфигурации, и что то там искать, чего не найти вообще в принципе, кроме поломанной головы?
|
|||
26
NIGHTHUNTER
04.12.20
✎
07:09
|
Есть документ. Сейчас туда что загружу, запишу его закрою, открою то и отображается. http://joxi.ru/DmBK7Equ4610K2
то же самое почему не работает в справочнике? На его форме? Согласен есть различия, но я же их учел! все загружается. Но потом при открытии не отображается. |
|||
27
kobzon2
04.12.20
✎
07:57
|
Нужно включать отладчик и смотреть, что записалось к твоему справочнику или не записалось, что имеется сразу при открытии справочника и что после твоих присвоений.
Консоль запросов опять же поможет. Или подойти к руководителю и сказать, что данная задача очень сложная и мне нужна помощь сторонних специалистов. |
|||
28
NIGHTHUNTER
04.12.20
✎
08:32
|
вижу что сейчас работает следующим образом
загружаемое изображение с документа, в последствии открывается как на форме изображения, так и на форме справочника. Загружаешь на форму документа, оно появляется на форме, и в последствии, и на форме открываемого элемента, этого загруженного справочника. Так и на форме снова открываемого этого документа. Но вот если загружать изображение на форме справочника, оно появляется на форме, но не отображается после записи и закрытия справочника. По коду я смотрел, туда в реквизит файл и помещаются и извлекаются, примерно одинаковые строковые значения, наподобе таких (13). |
|||
29
NIGHTHUNTER
04.12.20
✎
08:42
|
Значения все одни и те же, только при открытии загруженных на форму справочника, они не отображаются на форме, изображения.
Ладно, понятно, наверное никто не подскажет, так как не видит никто этого просто. |
|||
30
NIGHTHUNTER
04.12.20
✎
09:16
|
UP! Подскажете что можно посмотреть? Или что испробовать, что поправить?
|
|||
31
Галахад
гуру
04.12.20
✎
09:26
|
В (1) уже подсказали.
Потом несколько раз посоветовали посмотреть (1). |
|||
32
NIGHTHUNTER
04.12.20
✎
09:54
|
(31) Ну я это делал. Результата нет. Все так же.
1). Открываю документ. Нажимаю кнопку загрузить логотип. Выбираю картинку. Она появляется на форме. Записываю и закрываю документ. Открываю документ. Картинка на форме. Перехожу в справочник. Нахожу этот элемент, открываю его, картинка на форме элемента справочника. То есть, она загружается нормально и в документ, и в справочник. И выводится тем же кодом и на форму документа и на форму справочника !!!! // &НаКлиенте Процедура ДобавитьЛоготип(Команда) ИмяФайла = ""; ПутьФайла = ""; ВыбранноеИмяФайла = ""; Если ПоместитьФайл(ПутьФайла, ИмяФайла, ВыбранноеИмяФайла) = Истина Тогда Ф = Новый Файл(ВыбранноеИмяФайла); НаименованиеФайлаЛоготипа = Ф.ИмяБезРасширения; Логотип = ПутьФайла; УстановитьКартинку(); КонецЕсли; КонецПроцедуры // &НаСервере Процедура УстановитьКартинку() НовыйФайлКартинки = Справочники.Файлы.СоздатьЭлемент(); НовыйФайлКартинки.Наименование = НаименованиеФайлаЛоготипа; НовыйФайлКартинки.Файл = Новый ХранилищеЗначения(ПолучитьИзВременногоХранилища(Логотип)); Логотип = ПоместитьВоВременноеХранилище(НовыйФайлКартинки.Файл.Получить()); НовыйФайлКартинки.Записать(); Объект.Картинка = НовыйФайлКартинки.Ссылка; КонецПроцедуры // &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Логотип = ПолучитьНавигационнуюСсылку(Объект.Картинка, "Файл"); Элементы.Логотип.РазмерКартинки = РазмерКартинки.АвтоРазмер; // ... 2). Создаю элемент справочника. Нажимаю кнопку, загрузить логотип. Картинка появляется на форме справочника. Нажимаю записать и закрыть. Открываю этот только что созданный элемент справочника, картинки на форме нет!!!!! |
|||
33
NIGHTHUNTER
04.12.20
✎
09:56
|
(32+) Код, загружающий картинку на форму документа и в справочник. потом нормально открывается и кодом (0).
То есть там проблема в самой загрузке? вот тут? // &НаСервере Процедура УстановитьКартинку() Объект.Наименование = НаименованиеФайлаЛоготипа; Записать(); ОбъектСправочникФайлы = Объект.Ссылка.ПолучитьОбъект(); ОбъектСправочникФайлы.Файл = Новый ХранилищеЗначения(ПолучитьИзВременногоХранилища(Логотип)); |
|||
34
NIGHTHUNTER
04.12.20
✎
09:56
|
(31) Я же делал это. Результат не меняется. Что там смотреть мне ещё ?
|
|||
35
NIGHTHUNTER
04.12.20
✎
10:13
|
(31) Почему мне это не помогает ?
// &НаКлиенте Процедура ЗагрузитьЛоготип(Команда) ИмяФайла = ""; ПутьФайла = ""; ВыбранноеИмяФайла = ""; Если ПоместитьФайл(ПутьФайла, ИмяФайла, ВыбранноеИмяФайла) = Истина Тогда // Ф = Новый Файл(ВыбранноеИмяФайла); НаименованиеФайлаЛоготипа = Ф.ИмяБезРасширения; Логотип = ПутьФайла; УстановитьКартинку(); КонецЕсли; КонецПроцедуры // &НаСервере Процедура УстановитьКартинку() Объект.Наименование = НаименованиеФайлаЛоготипа; Записать(); //ОбъектСправочникФайлы = Объект.Ссылка.ПолучитьОбъект(); ОбъектСправочникФайлы = РеквизитФормыВЗначение("Объект"); ОбъектСправочникФайлы.Файл = Новый ХранилищеЗначения(ПолучитьИзВременногоХранилища(Логотип)); Логотип = ПоместитьВоВременноеХранилище(ОбъектСправочникФайлы.Файл.Получить()); КонецПроцедуры // &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Если ЗначениеЗаполнено(Объект.Ссылка) Тогда Логотип = ПолучитьНавигационнуюСсылку(Объект.Ссылка, "Файл"); Элементы.Логотип.РазмерКартинки = РазмерКартинки.АвтоРазмер; КонецЕсли; КонецПроцедуры |
|||
36
NIGHTHUNTER
04.12.20
✎
10:14
|
Это ничего не дает!!!!
ОбъектСправочникФайлы = РеквизитФормыВЗначение("Объект"); Чего я не понимаю? Как нужно? |
|||
37
NIGHTHUNTER
04.12.20
✎
10:24
|
Пробую как только можно, меняя изменяя все, но не работает (
|
|||
38
NIGHTHUNTER
04.12.20
✎
11:19
|
все знатоки мне все рассказали!!!!
|
|||
39
acht
04.12.20
✎
11:30
|
Мироздание, Андрей. Мироздание не обманешь.
|
|||
40
NIGHTHUNTER
04.12.20
✎
11:34
|
Скачал пример. И увидел его в описании на сайте.
Там обязательно что бы был включен режим модальности не использовать в конфигурации. Это что главное???? То есть без этого никак????? Или что? Почему работает добавление картинки через документ? А с элемента справочника нет. |
|||
41
NIGHTHUNTER
04.12.20
✎
11:35
|
(40) Там делают через оповещение. А как в (0) что нельзя сделать ????
&НаКлиенте Процедура ВыбратьФайлКартинки(Команда) //Создаем оповещение, именно процедура "ОбработатьВыборФайла" будет вызвана при закрытии окна выбора файла Оповещение = Новый ОписаниеОповещения("ОбработатьВыборФАйла", ЭтотОбъект); //Открываем интерактивно окно для выбора файла НачатьПомещениеФайла(Оповещение, , , Истина, УникальныйИдентификатор); КонецПроцедуры &НаКлиенте Процедура ОбработатьВыборФайла(Результат, Адрес, ВыбранноеИмяФайла, ДополнительныеПараметры) Экспорт Если Не Результат Тогда Возврат; КонецЕсли; СсылкаНаКартинку = Адрес; КонецПроцедуры &НаСервере Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) Если ЭтоАдресВременногоХранилища(СсылкаНаКартинку) Тогда ТекущийОбъект.ДанныеКартинки = Новый ХранилищеЗначения( ПолучитьИзВременногоХранилища(СсылкаНаКартинку) ); КонецЕсли; КонецПроцедуры &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) СсылкаНаКартинку = ПолучитьНавигационнуюСсылку(Объект.Ссылка, "ДанныеКартинки"); КонецПроцедуры |
|||
42
NIGHTHUNTER
04.12.20
✎
11:47
|
нашел ещё пример, там модальность использовать, но в коде справочника, создается сам же элемент справочника
&НаКлиенте Процедура ДобавитьКартинку(Команда) ИмяФайла = ""; ПутьФайла = ""; //Вызываем Диалоговое окно и помещаем файл Картинки из локальной файловой системы во временное хранилище Если ПоместитьФайл(ПутьФайла, , ИмяФайла, Истина)= Истина Тогда //в строковый реквизит ФОТО нашей формы сохраняем ссылку на Картинку во временном хранилище Фото = ПутьФайла; //для создания нового элемента в Справонике Файлы и записи Картинки в его реквизит Файл //переходим на сервер с помощью вызова серверной процедуры УстановитьКартинку(); КонецЕсли; //условие ЕСЛИ нужно для того, чтобы если пользователь отказался от выбора файла //мы не вызывали серверную процедуру УстановитьКартинку() КонецПроцедуры &НаСервере Процедура УстановитьКартинку() //создаем новый элемент в Справочнике Файлы НовыйФайлКартинки = Справочники.Файлы.СоздатьЭлемент(); //в реквизит СправочникаФайлы Файл помещаем выбранную ранее Картинку, НовыйФайлКартинки.Файл = Новый ХранилищеЗначения(ПолучитьИзВременногоХранилища(Фото)); Фото = ПоместитьВоВременноеХранилище(НовыйФайлКартинки.Файл.Получить()); //записываем новый элемент справочника Файлы НовыйФайлКартинки.Записать(); //добавили во 2 ЧАСТИ ПРИМЕРА // тут проверим была ли ранее установлена картинка и если да - то удалим ее из справочника Файлы //вторая проверка Объект.Картинка.ПолучитьОбъект()<>Неопределено нужна чтобы проверить если ли в справочнике //Файлы элемент, на который ссылается наш реквизит Картинка. //Тем не менее, картинки может не быть по 2 причинам: //1 если мы удалим картинку из справочника Файлы вручную //2 если мы установим новую картинку, но откажемся от сохранения изменений в данный элемент справочника Сотрудники Если Объект.Картинка.Пустая() = Ложь и Объект.Картинка.ПолучитьОбъект()<>Неопределено Тогда СтарыйФайлКартинки = Объект.Картинка.ПолучитьОбъект(); СтарыйФайлКартинки.Удалить(); КонецЕсли; //конец того, что добавили во 2 ЧАСТИ ПРИМЕРА //устанавливаем значение реквизита Картинка Справочника Сотрудники Объект.Картинка = НовыйФайлКартинки.Ссылка; //добавили во 2 ЧАСТИ ПРИМЕРА. Модифицированность. Программно укажем, что данный элемент справочника был изменен. ЭтаФорма.Модифицированность=Истина; //если модифицированности недостаточно, то можно использовать метод формы Записать (снять комментарий с последней строки) //ЭтаФорма.Записать(); КонецПроцедуры &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) //отображение картинки при открытии формы справочника Фото = ПолучитьНавигационнуюСсылку(Объект.Картинка, "Файл"); //устанавливаем автомасштаб для картинки Элементы.Фото.РазмерКартинки = РазмерКартинки.АвтоРазмер; КонецПроцедуры |
|||
43
NIGHTHUNTER
04.12.20
✎
11:49
|
(42) Даже что то удаляется !!! Что за трешь ?!
|
|||
44
novichok79
05.12.20
✎
10:21
|
(43) как вы сдали на профессионала по УПП в начале 2010х, если вы не обучаемы?
гуглить тоже не научились: http://catalog.mista.ru/1c/articles/195003/ |
|||
45
NIGHTHUNTER
07.12.20
✎
06:29
|
Отключение модальности на что повлияет?
Из 2х вышеприведенных примеров, я выявил, что можно загружать, из справочника в другой справочник изображение. Выводить и тут и тут. Но только нельзя загружать изображение в справочник же и открывать из него же, то есть выводить изображение на форму. Или отключать использование модальности и делать загрузку изображения в сам справочник. И делать вывод из него же. Делается это в этом случае через оповещение и с использованием отключения модальности. Как я пробовал в (0) не входит ни в один из этих двух вариантов по этому не работает. Я думаю к какому лучше скрониться. |
|||
46
novichok79
07.12.20
✎
15:27
|
> Но только нельзя загружать изображение в справочник же и открывать из него же, то есть выводить изображение на форму.
можно. модальность - это вообще о другом. переходите на БСП, там это реализовано. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |