Вход | Регистрация

  1  2  3  4   
1С:Предприятие :: 1С:Предприятие 8 общая

Почему Сотрудник = Пользователи.ТекущийПользователь() не присваивает значение

Почему Сотрудник = Пользователи.ТекущийПользователь() не присваивает значение
Я
   genesys
 
08.09.16 - 13:33
Есть Документ.ПримемПациентов
В списке документов есть реквизит Врач
Врач
Почему код ЭтаФорма.Сотрудник = Пользователи.ТекущийПользователь();
Не подставляет в Реквизит Сотрудник Текущего пользователя ?
 
 
   SilentMan
 
1 - 08.09.16 - 13:34
Потому что не совпадают типы слева и справа. И один к другому не приводится
   genesys
 
2 - 08.09.16 - 13:37
(1) В смысле ??
   Метранпаж
 
3 - 08.09.16 - 13:38
(2) Справочник.Сотрудники и Справочник.Пользователи - это разные типы
   genesys
 
4 - 08.09.16 - 13:38
(1) Я хочу, чтобы в списке документов Реквизит Врач был недоступен для редактирования и в нём всегда был текущий врач(пользователь)
   Fish
 
5 - 08.09.16 - 13:39
(4) Давай сначала: какого типа у тебя реквизит "Врач"?
   genesys
 
6 - 08.09.16 - 13:41
(5) СправочникСсылка.СотрудникиОрганизаций
   CMblCL
 
7 - 08.09.16 - 13:42
(0) Врач <> Пользователь, если хочешь, чтобы подставлялся определенный врач у определенного пользователя, то надо их связать, например через настройки пользователей
   Fish
 
8 - 08.09.16 - 13:42
(6) Ну вот. А код Пользователи.ТекущийПользователь() имеет совсем другой тип.
   Fish
 
9 - 08.09.16 - 13:43
+(8) имеет = возвращает.
   genesys
 
10 - 08.09.16 - 13:45
(8) (7) Мне вообще надо, чтобы в этом реквизите пользователь не мог выбирать никого кроме себя
в реквизите организации это как то реализованно, типа какая организация относится к пользователю только такая и есть для выбора
 
 Рекламное место пустует
   genesys
 
11 - 08.09.16 - 13:46
я думаю, что это реализовано как то через Роли
но не могу пока что понять
   genesys
 
12 - 08.09.16 - 13:48
Может быть вы сможете подсказать ?
   CMblCL
 
13 - 08.09.16 - 13:52
(10) Посмотри откуда и как заполняется реквизит Организация и сделать также
   genesys
 
14 - 08.09.16 - 13:52
Получается: организаций много, но у пользователя в реквизите организация выбор только та, к которой он имеет отношение
и нужно так же сделать в списке дкоументов
   genesys
 
15 - 08.09.16 - 13:54
(13) Он не заполняется, там раскрывается список организаий и там только 1
   genesys
 
16 - 08.09.16 - 14:00
Есть чо по подсказкам ?)
   CMblCL
 
17 - 08.09.16 - 14:00
(16) А если сам найдешь?
   genesys
 
18 - 08.09.16 - 14:01
(17) не, я поверю на слово )
   genesys
 
19 - 08.09.16 - 14:03
(17) Ну а как это вообще реализовывается то ?
Я про Реквизит организация
как могли сделать так, чтобы в выбре была только организация сотрудника
   CMblCL
 
20 - 08.09.16 - 14:11
Например, через ограничение доступа на уровне записей или через настройку пользователя "Основная организация" или прямо в коде что-то прописано, вариантов много
   genesys
 
21 - 08.09.16 - 14:12
(20) На 99% уверен, что не в коде
А может быть через Роль ?
   genesys
 
22 - 08.09.16 - 14:24
Не подскажете ?) Я чот уже хз куда смотреть
   genesys
 
23 - 08.09.16 - 14:28
МОжет быть тут указывается ????

Попытка
        Организация = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ОсновнаяОрганизация");
        лОтбор=ДокументСписок.Отбор.Организация;
        лОтбор.Использование=ЗначениеЗаполнено(Организация);
        Если лОтбор.Использование Тогда
            лОтбор.ВидСравнения=ВидСравнения.Равно;
            лОтбор.Значение=Организация;
        КонецЕсли;  
    Исключение КонецПопытки;
   genesys
 
24 - 08.09.16 - 14:49
ну помогите мне хоть код разобрать, тут или не тут прпоисывается, что организация только одна может быть
   Artificial
 
25 - 08.09.16 - 14:52
(24) Здесь устанавливается отбор по организации для текущего пользователя. Как бы видно.
   genesys
 
26 - 08.09.16 - 14:54
(25) и как он устанавливается?
Получается что организация доступна только "ОсновнаяОрганизация" сотрудника? так?
   genesys
 
27 - 08.09.16 - 14:54
(25) я только учусь просто
   Dark_Warrior
 
28 - 08.09.16 - 15:01
(26) Вот так:
(23)
лОтбор.ВидСравнения=ВидСравнения.Равно;
            лОтбор.Значение=Организация;
   Dark_Warrior
 
29 - 08.09.16 - 15:02
В УправлениеПользователями.ПолучитьЗначениеПоУмолчанию получается ОсновнаяОрганизация для пользователя, далее устанавливается отбор в списке.
   genesys
 
30 - 08.09.16 - 15:04
(29) а можно как-нибудь подобно сделать для пользователя ? нуу т.е. отбор по пользователю
   genesys
 
31 - 08.09.16 - 15:11
Я не совсем понимаю, честно говоря просидел часа 2 уже то в ролях копался то ещё где
не могу понять как можн осделать, чтобы сотрудник в списке был 1 так же как и организация
   genesys
 
32 - 08.09.16 - 15:15
Это просто не совсем учебное задание мне, я бы и всю ночь просидел, но желательно бы в течении часа сделать и сдать (
   vicof
 
33 - 08.09.16 - 15:23
(32) Берешь нанимаешь программиста, платишь ему денег, смотришь, как он делает. Учишься и радуешься.
 
 
   genesys
 
34 - 08.09.16 - 15:23
(33) Ага, у меня зп не было ещё
   genesys
 
35 - 08.09.16 - 15:24
Подсказали бы )
   vicof
 
36 - 08.09.16 - 15:33
(35) За час подсказать как настраивать РЛС нереально. Да и не нужно никому.
Когда тебя брали, наверняка видели, какой у тебя уровень знаний.
Пробуй, делай, без этого никто тебя не научит.

Для начала нужно понять, как связаны врачи и пользователи, и связаны ли вообще.
По врачу получить пользователя или по пользователю врача и не давать записывать документ (/выбирать в поле/еще как-нить), если пользователь врача и пользователь сеанса не совпадают.
   genesys
 
37 - 08.09.16 - 15:34
(36) Врач = Сотрудник
   vicof
 
38 - 08.09.16 - 15:34
(37) Не ври
   genesys
 
39 - 08.09.16 - 15:34
Сотрудник по идее = ТекущийПользователь
   genesys
 
40 - 08.09.16 - 15:34
Что не ври ? врач = Справочники.Сотрудники
   vicof
 
41 - 08.09.16 - 15:37
(40) Ладно, уговорил.
   vicof
 
42 - 08.09.16 - 15:38
(39) Сотрудник не по идее -один справочник
Врач не по идее - другой справочник
   genesys
 
43 - 08.09.16 - 15:55
(42) нет справочника врач
это Управление Медецинским Центром
тут просто вместо Сотрудник Врач
   genesys
 
44 - 08.09.16 - 15:55
медицинским
   vicof
 
45 - 08.09.16 - 15:57
(44) ну хорошо, Врач, мне фиолетово, тебе меньше работы.
Что дальше непонятно в (36)
   Has
 
46 - 08.09.16 - 15:57
может у элемента справочника Пользователи есть какой-либо реквизит, связанный со справочником СотрудникиОрганизаций
   genesys
 
47 - 08.09.16 - 15:58
(45) А нельзя как то в коде отбор сделать, что в реквизит ВРАЧ заполняется ТЕКУЩИЙ ПОЛЬЗВОАТЕЛЬ? потому что текущийпользователь САНЯ
соответственно саня - врач
получается Врач: САНЯ
и мне надо чтобы это автоматом заполнялось и не было возможности редактировать
   genesys
 
48 - 08.09.16 - 15:59
(46) просто Сотрудник
   genesys
 
49 - 08.09.16 - 15:59
СправочникСсылка.СотрудникиОрганизаций
 
 Рекламное место пустует
   genesys
 
50 - 08.09.16 - 15:59
(46) А как это поможет ?
   vicof
 
51 - 08.09.16 - 16:11
(47) Программирование - это не твое. Иди лучше пылесосы продавать.
Нужно найти в себе силы узнать в гугле, какое событие отвечает за первоначальное заполнение реквизитов, и какие свойства отвечают за доступность полей на форме.
   genesys
 
52 - 09.09.16 - 07:04
(51) ко
   DDwe
 
53 - 09.09.16 - 07:05
(51) +100
   zak555
 
54 - 09.09.16 - 07:08
т.е. ты до сих пор не веришь, что без конфы не догадаться ?
   DDwe
 
55 - 09.09.16 - 07:13
(51) Он не понимает этого.
   genesys
 
56 - 09.09.16 - 07:20
(55) Я знал что ты придёшь сюда, теперь можешь уходить
И да, запятые с собой забери
   genesys
 
57 - 09.09.16 - 07:21
(54) я уже сам с помощью рлс всё сделал
и чхать какая там конфа
   VladZ
 
58 - 09.09.16 - 07:23
(0) Чтобы наступило просветление делаешь так:
1. идешь на склад, находишь ячейку для пылесосов (маленькая такая, квадратного вида).
2. Берешь стиральную машину и пихаешь в эту ячейку.

Не входит? А все почему? Потому что ячейка для пылесоса. И стиралкам здесь не место.
   Dark_Warrior
 
59 - 09.09.16 - 07:24
(57) С помощью РЛС сделал (58)? Т.е. присвоил реквизиту "Врач" значение другого типа?
   VladZ
 
60 - 09.09.16 - 07:24
База данных - тот же склад. И все должно лежать по своим местам.
   DDwe
 
61 - 09.09.16 - 07:26
(57) Мдя...
   hhhh
 
62 - 09.09.16 - 07:26
(57) ты нам на пальцах объясни, чего тебе нужно. Например, у тебя есть сын Саня, и во дворе стоит экскаватор, на боку у него вырезано Саня. Что нужно сделать? Загнать экскаватор в твою квартиру?
   genesys
 
63 - 09.09.16 - 07:28
(59) нет
   DDwe
 
64 - 09.09.16 - 07:28
У него просто отсутствует понятие базовых основ. Вот и лепит. ))))
   genesys
 
65 - 09.09.16 - 07:28
(62) Мне нужно, чтобы текущий пользователь видел только свои дкоументы.
   genesys
 
66 - 09.09.16 - 07:28
(64) там запятая,  а не точка ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
   zak555
 
67 - 09.09.16 - 07:29
(57) что за страх показать конфу?
   VladZ
 
68 - 09.09.16 - 07:30
(65) Смотри типовые. Там во всех документа есть реквизит "Ответственный". Тип значения - "Справочник.Пользователи".  Вот туда можешь запихать "Пользователи.ТекущийПользователь()".
   genesys
 
69 - 09.09.16 - 07:31
(67) я сказал 1БИт Управление Медицинским Центром
какой страх ?
   genesys
 
70 - 09.09.16 - 07:31
(68) ага
   VladZ
 
71 - 09.09.16 - 07:33
Совет: Есть определенное множество задач, возникающих при автоматизации всяческого учета. В типовых все эти задачи в 95% случаев решены. Открывай, смотри, делай так же. Не нужно изобретать велосипеды.
   DDwe
 
72 - 09.09.16 - 07:34
(66) Лечиться тебе мальчик нужно.
   hhhh
 
73 - 09.09.16 - 07:36
(69) теперь представь, сколько часов нам надо, чтобы найти, купить, скачать и установить на комп этот твой Бит? Прежде чем такое говорить.
   genesys
 
74 - 09.09.16 - 07:36
(73) он всё равно сделан на базе какой нибудь бп 2.0 (72) кококо
   batman69
 
75 - 09.09.16 - 07:50
(74) Почему такой грубый?
   hhhh
 
76 - 09.09.16 - 07:50
(74) неправда. БП 2.0 мы знаем, там у каждого пользователя указано физлицо. Если у тебя нету, значит это не бп 2.0
   zak555
 
77 - 09.09.16 - 07:52
(74) в такой хрени нет
+ ты изъясняешься на непонятном языке
   DDwe
 
78 - 09.09.16 - 07:55
(74)
- Слушай, Доцент. Ты был когда-нибудь маленький?
- Был.
- У тебя папа, мама был?
- Был...
- Зачем ты такой злой? Зачем, как собак? (С)
   genesys
 
79 - 09.09.16 - 08:09
(75) где же я грубил то (78) кококо[2]
   DDwe
 
80 - 09.09.16 - 08:21
(79) Неадекват.
   batman69
 
81 - 09.09.16 - 08:24
Как человек, который имеет хорошие знакомства в медицине, рекомендую ТС бросить программирование и обратиться к психиатру.
   zak555
 
82 - 09.09.16 - 08:26
(81) на лицо отклонения ?
   batman69
 
83 - 09.09.16 - 08:27
(82) И какие!!!! ))))
   sFAQer
 
84 - 09.09.16 - 08:52
Пятнично у вас тут...
   genesys
 
85 - 09.09.16 - 08:53
(80) ПочемУ? (81)  Для чего? (83) Какеи?
Вот заметить прошу DDwe и batman69, я не просил дать совет, я не просил оценивать мои знания и т д, я просил помочь по конкретной задаче, если же другие люди пытались понять мой бред и как то подсказать, то вы — пустословите и кукарекаете, так почему мне нужно идти к психиатру и быть в ваших глазах неадекватным, если все признаки неадекватного поведения присутствуют как раз-таки у вас ?
Может быть вы пытаетесь как то с помощью меня показать свои слабые стороны не указывая на себя ?:)
   genesys
 
86 - 09.09.16 - 08:53
И да, DDwe b @ифеьфт69 , вы похожи друг с другом, вам обоим для выражения эмоций нужны скобочки  :)
   genesys
 
87 - 09.09.16 - 08:54
@batman68 естессно
   genesys
 
88 - 09.09.16 - 08:54
да ёпт, ну вы поняли
   DDwe
 
89 - 09.09.16 - 09:02
(88) Ась?
   genesys
 
90 - 09.09.16 - 09:02
(89) Да
   DDwe
 
91 - 09.09.16 - 09:04
(90) Хм..
   _stay true_
 
92 - 09.09.16 - 09:05
(88) В общем, смотри:
1. Определи, какой тип данных имеет реквизит формы "Врач" и с каким реквизитом объекта он связан(клик по реквизиту формы правой, "свойства", "путькданным").
2. Зайди в справочник "пользователи" и "сотрудники". Наверняка есть какой-то связующий элемент(Наименование, имя и.т.п). Если совсем нет - создай у пользователя реквизит с типом Сотрудники, и руками запиши всем связанных сотрудников.
3.После этого ПараметрыСеанса.ТЕкущийПользователь.РеквизитСотрудник.Ссылка пихай в свою форму и сделай и сними с реквизита формы галку "доступность".

В общем, вариантов решения масса. Выбирай любое. Суть в том, чтобы была связь между пользователем и сотрудником. Не знаю, как в твоей конфе, в типовой у практически любого документа есть поле "ответственный".
   genesys
 
93 - 09.09.16 - 09:09
(92) 1) Уже отвечал СправочникСсылка.СотрудникиОрганизаций
2) У пользователя Рекизит Сотрудник СправочникСсылка.СотрудникиОрганизаций
   Fish
 
94 - 09.09.16 - 09:19
(93) А что возвращает функция Пользователи.ТекущийПользователь()?
   Михаил 1С
 
95 - 09.09.16 - 09:23
(85) Молодой программист, не понимаешь почему над тобой смеются? Я подскажу.
Ты сначала пишешь вопрос - 
"Почему код ЭтаФорма.Сотрудник = Пользователи.ТекущийПользователь();
Не подставляет в Реквизит Сотрудник Текущего пользователя ?"

Тебе дается полный окончательный ответ в (3).
Но ты его не слушаешь. Начинаешь говорить дальше что-то свое. Хотя Ответ тебе уже дан. И далее продолжалось также - тебе пытались давать ответы, наводящие вопросы. А ты - "ну я не знаю, надо, чтобы было как там" или еще что-то.

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

Далее, если нужно что-то еще - можно открыть новую ветку с новым вопросом.
Ну или продолжить в этой ветке, но хотябы не бросив то, что тебе дали.
   zak555
 
96 - 09.09.16 - 09:31
(95) на самом деле в поделках от фра там может быть составной тип, содержащий левое значение )
   _stay true_
 
97 - 09.09.16 - 10:08
Пробуй так

ЭтаФорма.Сотрудник = ПараметрыСеанса.ТекущийПользователь.Сотрудник.Ссылка;
Либо записывай в реквизит объекта что-то типа ЭтотОбъект.Сотрудник = ПараметрыСеанса.ТекущийПользователь.Сотрудник.Ссылка;

И заодно сними свойство "Доступность" с реквизита формы.
Считай, тебе уже техпроект и ТЗ расписали)))
   DDwe
 
98 - 09.09.16 - 10:16
Он просто издеётся над людями.
   _stay true_
 
99 - 09.09.16 - 10:19
(98) Как говорил мой первый "наставник" времен стажерства:

"У программиста должны быть прокачены два скилла: умение гуглить и умение пить"(С)
   DDwe
 
100 - 09.09.16 - 10:26
100
  1  2  3  4   

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует