Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Видимость при условии          
Астахов Подменю пользователя
сообщение 04.03.15, 23:15
Сообщение #1

Общительный
**
Группа: Пользователи
Сообщений: 27
Спасибо сказали: 0 раз
Рейтинг: 0

Проблема такая
есть константа "МетодСписанияПартий" тип перечисления.ПеречисленияСписанияПартий
в перечислении след. значения - ФИФО , ЛИФО , Вручную
и есть документ.расходная накладная с полем в табл.ч. Партия
Вот нужно зделать так что бы при выборе константы ФИФО ИЛИ ЛИФО партия ставала невидимой
я вот пробывал вот такой код но нечего не получаеться
&НаСервере
Процедура ПриОткрытии(Отказ)                      
    Константы.МетотСписанияПартий.Получить();
    Константы.МетотСписанияПартий.ФИФО = Перечисления.ПеречислениеСписанияПартий.ФИФО;
    Константы.МетотСписанияПартий.ЛИФО = Перечисления.ПеречислениеСписанияПартий.ЛИФО;
    Если Перечисления.ПеречислениеСписанияПартий.ЛИФО И Перечисления.ПеречислениеСписанияПартий.ФИФО Тогда
        Элементы.РасходПартия.Видимость = ложь;
    Иначе
        Элементы.РасходПартия.Видимость = Истина;
        КонецЕсли;
    
КонецПроцедуры



 ! 

Выделяйте код без дублирования тегов!
И не надо дубировать темы.
 


Сообщение отредактировал Vofka - 05.03.15, 8:44

Fairuza Подменю пользователя
сообщение 05.03.15, 7:39
Сообщение #2

Молчаливый
*
Группа: Пользователи
Сообщений: 2
Спасибо сказали: 0 раз
Рейтинг: 0

МетодСписанияПартий или МетотСписанияПартий?

sava1 Подменю пользователя
сообщение 05.03.15, 7:52
Сообщение #3

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2684
Из: Проскуров
Спасибо сказали: 678 раз
Рейтинг: 656.7

1.Видимость устанавливается на клиенте.
2.А от этого просто "крышу сносит" -
Цитата(Астахов @ 04.03.15, 23:15) *
Константы.МетотСписанияПартий.ФИФО = Перечисления.ПеречислениеСписанияПартий.ФИФО;
    Константы.МетотСписанияПартий.ЛИФО = Перечисления.ПеречислениеСписанияПартий.ЛИФО;
    Если Перечисления.ПеречислениеСписанияПартий.ЛИФО И Перечисления.ПеречислениеСписанияПартий.ФИФО Тогда


Petre Подменю пользователя
сообщение 05.03.15, 9:32
Сообщение #4

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2902
Из: Київ, Україна
Спасибо сказали: 1144 раз
Рейтинг: 1225

Цитата(Астахов @ 04.03.15, 23:15) *
я вот пробывал вот такой код но нечего не получаеться

Вы можете детально пояснить? Что не получается? Какой текст ошибки? Что видно по отладчику?


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

Астахов Подменю пользователя
сообщение 05.03.15, 10:19
Сообщение #5

Общительный
**
Группа: Пользователи
Сообщений: 27
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(Petre @ 05.03.15, 9:32) *
Вы можете детально пояснить? Что не получается? Какой текст ошибки? Что видно по отладчику?

Извините ,реально вчера какуето ахинею написал
вотт более реальный код но опять же он роботает на половину
при любом перечислении партию не видно
&НаКлиенте
Процедура ПриОткрытии(Отказ)
    Если    ПриОткрытииНаСервере() = 1  Тогда
        Элементы.РасходПартия.Видимость=Истина;
    Иначе
        Элементы.РасходПартия.Видимость=Ложь;
        КонецЕсли;
КонецПроцедуры

&НаСервере
Функция ПриОткрытииНаСервере()
    Константы.МетодСписанияПартий.Получить();
    Если Константы.МетодСписанияПартий = Перечисления.ПеречислениеСписанияПартий.Вручную тогда
        Возврат 1;    
    Иначе
        Возврат 2;
        КонецЕсли;
КонецФункции

Petre Подменю пользователя
сообщение 05.03.15, 10:32
Сообщение #6

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2902
Из: Київ, Україна
Спасибо сказали: 1144 раз
Рейтинг: 1225

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    Элементы.РасходПартия.Видимость = Константы.МетодСписанияПартий.Получить() = Перечисления.ПеречислениеСписанияПартий.Вручную;
КонецПроцедуры


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

Астахов Подменю пользователя
сообщение 05.03.15, 11:10
Сообщение #7

Общительный
**
Группа: Пользователи
Сообщений: 27
Спасибо сказали: 0 раз
Рейтинг: 0


 ! 

Правила, пункт 1!!!
 


Цитата(Petre @ 05.03.15, 10:32) *
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    Элементы.РасходПартия.Видимость = Константы.МетодСписанияПартий.Получить() = Перечисления.ПеречислениеСписанияПартий.Вручную;
КонецПроцедуры

извините я не понял ваш код
можете обьяснить пожалуйсто

Сообщение отредактировал Vofka - 05.03.15, 11:01

Petre Подменю пользователя
сообщение 05.03.15, 11:20
Сообщение #8

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2902
Из: Київ, Україна
Спасибо сказали: 1144 раз
Рейтинг: 1225

Чтобы по несколько раз не вызывать сервер, делаете все это в обработчике события "ПриСозданииНаСервере".
Что еще не понятно по коду?


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

Астахов Подменю пользователя
сообщение 05.03.15, 11:23
Сообщение #9

Общительный
**
Группа: Пользователи
Сообщений: 27
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(Petre @ 05.03.15, 11:20) *
Чтобы по несколько раз не вызывать сервер, делаете все это в обработчике события "ПриСозданииНаСервере".
Что еще не понятно по коду?

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

Petre Подменю пользователя
сообщение 05.03.15, 11:26
Сообщение #10

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2902
Из: Київ, Україна
Спасибо сказали: 1144 раз
Рейтинг: 1225

Это весь код. В смысле, вместо двух ваших процедур используйте то, что я написал.


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

Спасибо сказали: Астахов,

Астахов Подменю пользователя
сообщение 05.03.15, 11:39
Сообщение #11

Общительный
**
Группа: Пользователи
Сообщений: 27
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(Petre @ 05.03.15, 11:26) *
Это весь код. В смысле, вместо двух ваших процедур используйте то, что я написал.

Огромное списибо))
код так не роботает как вы написали
нужно всеравно через клиент
вот как
&НаКлиенте
Процедура ПриОткрытии(Отказ)
    ПриОткрытииНаСервере();
КонецПроцедуры

&НаСервере
Процедура ПриОткрытииНаСервере()
    Элементы.РасходПартия.Видимость = Константы.МетодСписанияПартий.Получить() = Перечисления.ПеречислениеСписанияПартий.Вручную;
КонецПроцедуры

Petre Подменю пользователя
сообщение 05.03.15, 12:12
Сообщение #12

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2902
Из: Київ, Україна
Спасибо сказали: 1144 раз
Рейтинг: 1225

Цитата(Астахов @ 05.03.15, 11:39) *
код так не роботает как вы написали

Наверное, вы не обратили внимание на обработчик в моем примере: "ПриСозданииНаСервере". Это событие формы.
В вашем же варианте с клиента идет вызов сервера, потом на клиенте устанавливается видимость, которая еще раз вызывает сервер. В итоге у вас два лишних вызова сервера.


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

Астахов Подменю пользователя
сообщение 05.03.15, 12:16
Сообщение #13

Общительный
**
Группа: Пользователи
Сообщений: 27
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(Petre @ 05.03.15, 12:12) *
Наверное, вы не обратили внимание на обработчик в моем примере: "ПриСозданииНаСервере". Это событие формы.
В вашем же варианте с клиента идет вызов сервера, потом на клиенте устанавливается видимость, которая еще раз вызывает сервер. В итоге у вас два лишних вызова сервера.

Нет,я прописал полностью вашу процедуру а точнее скопировал ,и вот только что перепроверил
не знаю в чем проблема но процедура не ругаеться но и не работает
В любом случае ВАМ огромное спасибо

Petre Подменю пользователя
сообщение 05.03.15, 12:21
Сообщение #14

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2902
Из: Київ, Україна
Спасибо сказали: 1144 раз
Рейтинг: 1225

Цитата(Астахов @ 05.03.15, 12:16) *
не знаю в чем проблема но процедура не ругаеться но и не работает

В свойствах формы в разделе "события" необходимо определить для события "ПриСозданииНаСервере" данную процедуру.


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

Астахов Подменю пользователя
сообщение 05.03.15, 12:33
Сообщение #15

Общительный
**
Группа: Пользователи
Сообщений: 27
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(Petre @ 05.03.15, 12:21) *
В свойствах формы в разделе "события" необходимо определить для события "ПриСозданииНаСервере" данную процедуру.

Понял,Спасибо

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 28.03.24, 17:37
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!