Имя: Пароль:
1C
1C 7.7
v7: Печать списка пользователей 1с 7.7
0 Platina
 
13.06.07
15:45
с правами и интерфейсами - как? Если есть обработка, скиньте на e-mail, пожалуйста!
1 Platina
 
13.06.07
15:48
не могу изменить e-mail в карточке. Мой e-mail platina49@list.ru
2 Heckfy
 
13.06.07
15:49
Поищи UsersDef.dll
Там работы на 5 минут.
3 Лефмихалыч
 
13.06.07
15:49
4 Platina
 
13.06.07
15:50
(2) не умею я
5 Ёпрст2
 
13.06.07
15:52
6 Heckfy
 
13.06.07
15:58
(4) Вот тебе рабочая процедура с использованием (2). Только предварительно ее загрузить нужно. В смысле длл. Печать, я думаю, сама сможешь сделать. Будут вопросы, задавай.
Процедура глПользователиБазы(База) Экспорт    
   перем спрП,тз;
   спрП=создатьОбъект("Справочник.Пользователи");
   тз=создатьОбъект("ТаблицаЗначений");
   СпрП.ИспользоватьВладельца(База);
   спрП.ВыбратьЭлементы();
   Пока спрП.ПолучитьЭлемент()=1 Цикл
       спрП.Удалить(1);
   КонецЦикла;
   ТЗ=ОбъектВК.ПолучитьСписокПользователейТЗ(СокрЛП(База.Путь));
   Если ТипЗначенияСтр(ТЗ)="ТаблицаЗначений" Тогда
       тз.ВыбратьСтроки();
       Пока тз.ПолучитьСтроку()=1 Цикл
           спрП.Новый();
           спрП.Наименование = тз.ИмяПользователя;
           спрП.Пароль = тз.ХэшПароляПользователя;
           спрП.ПолноеИмя = тз.ПолноеИмяПользователя;
           спрП.Директория = тз.ДиректорияПользователя;
           спрП.Интерфейс = тз.ИнтерфейсПользователя;
           спрП.Права = тз.ПраваПользователя;
           спрП.Записать();
       КонецЦикла;
   КонецЕсли;
   КонецПроцедуры
7 Platina
 
13.06.07
15:59
(5) Там только набор прав. Мне надо список пользователей с ИХ правами и интерфейсами
8 Platina
 
13.06.07
16:00
(6)Что значит "Загрузить dll"?
9 Heckfy
 
13.06.07
16:09
Если делаешь обработкой, то в
Процедура ПриОткрытии()
   Если ЗагрузитьВнешнююКомпоненту(КаталогИБ()+"\UsersDef.dll")=0 Тогда
       Сообщить("Не обнаружена компонента UsersDef.dll!");
   КонецЕсли;
   ОбъектВК=СоздатьОбъект("AddIn.UsersDef");
КонецПроцедуры()
10 Platina
 
13.06.07
16:12
(9) Спасибо! Попробую
11 IUnknown
 
13.06.07
16:19
//*******************************************
procedure CheckBase();
   strValue = vlListBase.GetValue(vlListBase.CurSel());
   strNameFile = strValue + "\UsrDEF\Users.USR";
   vlUser.RemoveAll();
   strPassword = "";
   if fs.ExistFile(strNameFile) > 0 then
       objFSO = createobject("Scripting.FileSystemObject");
       txtFile = objFSO.OpenTextFile(strNameFile);
       strBuffer = "";
       intCount = 0;
       while txtFile.AtEndOfStream = 0 do
           intCount = intCount + 1;
           strChar = txtFile.Read(1);
           if asc(strChar) > 31 then
               strBuffer = strBuffer + strChar;
           endif;
       enddo;
       strSearch = "{""UserItemType"",""Page.";
       intPos = find(strBuffer, strSearch);
       strBuffer = mid(strBuffer, intPos);
       intPos = 1;
       while intPos > 0 do
           strBuffer = mid(strBuffer, intPos + 22);
           intOffset = find(strBuffer, """,""") + 3;
           strBuffer = mid(strBuffer, intOffset);
           strUserName = left(strBuffer, find(strBuffer, """,""") - 1);
           vlUser.AddValue(strUserName);
           intPos = find(strBuffer, strSearch);
       enddo;
       if vlUser.GetListSize() > 0 then
           strName = username();
           intPos =  vlUser.FindValue(strName);
           vlUser.CurSel(?(intPos = 0, 1, intPos));
       endif;
       Form.vlUser.Enable(1);
       Form.strPassword.Enable(1);
   else
       Form.vlUser.Enable(0);
       Form.strPassword.Enable(0);
   endif;
endprocedure
12 IUnknown
 
13.06.07
16:22