Как запретить ручное создание, удаление проводок?
Модераторы: m0p3e, edward_K, Модераторы
Как запретить ручное создание, удаление проводок?
При этом оставить доступ на групповую модификацию аналитики
			
			
									
						
										
						А исходники и не нужны. Просто необходимо знать события системы. 
Код то что ниже: Если установленна вышеописанная настройка в положение ДА, то при открытии списка бух проводок как в бровсе так и в режиме редактирования блокируем команды вставки и удаления.
осталость тока блокирнуть Ctrl+2 и Ctrl+3 (копи/пасте) cmSaveDoc и cmRestoreDoc соответственно.
 
			
			
									
						
										
						Код то что ниже: Если установленна вышеописанная настройка в положение ДА, то при открытии списка бух проводок как в бровсе так и в режиме редактирования блокируем команды вставки и удаления.
осталость тока блокирнуть Ctrl+2 и Ctrl+3 (копи/пасте) cmSaveDoc и cmRestoreDoc соответственно.
Код: Выделить всё
#Component "F_Oborot"
Alter interface Oborot ( '');
Var boID :  boolean;
Window wiKatEdit01 '' EscClose;
HandleEvent
cmInit:
{
  if(inherited :: HandleEvent (cmInit)=heOk)
  {
    if(boID)
    {
      DisableCommand(cmInsert);
      DisableCommand(cmDelete);
    }
  }
}
  end; // HandleEvent window wiKatEdit01
end; // window
//***********************************************
Handleevent  //Interface
cmInit:
{
  if(inherited :: HandleEvent (cmInit)=heOk)
    boID := boGetTune('FIN.USER.NOEDITPROV');
  if(boID)
  {
    DisableCommand(cmInsert);
    DisableCommand(cmDelete);
  }
}
end;
end.
я вот так добавил в двух местах по две строки:
вроде правильно и перестало вставляться
			
			
									
						
										
						Код: Выделить всё
#Component "F_Oborot" 
Alter interface Oborot ( ''); 
Var boID :  boolean; 
Window wiKatEdit01 '' EscClose; 
HandleEvent 
cmInit: 
{ 
  if(inherited :: HandleEvent (cmInit)=heOk) 
  { 
    if(boID) 
    { 
      DisableCommand(cmInsert); 
      DisableCommand(cmDelete); 
      DisableCommand(cmSaveDoc); 
      DisableCommand(cmRestoreDoc); 
    } 
  } 
} 
  end; // HandleEvent window wiKatEdit01 
end; // window 
//*********************************************** 
Handleevent  //Interface 
cmInit: 
{ 
  if(inherited :: HandleEvent (cmInit)=heOk) 
    boID := boGetTune('FIN.USER.PROTECTBSALDO'); 
  if(boID) 
  { 
    DisableCommand(cmInsert); 
    DisableCommand(cmDelete); 
    DisableCommand(cmSaveDoc); 
    DisableCommand(cmRestoreDoc);
  } 
} 
end; 
end. 
Нет такого слова "не могу" есть "не хочу"я наверное не смогу
Главное попробовать...
PS: Можно и
Код: Выделить всё
Window wiKatEdit01 '' EscClose; 
HandleEvent 
cmInit: 
{ 
  if(inherited :: HandleEvent (cmInit)=heOk) 
  { 
    if(boID) 
    { 
      DisableCommand(cmInsert); 
      DisableCommand(cmDelete); 
    } 
  } 
} 
  end; // HandleEvent window wiKatEdit01 
end; // window
Можете убедиться - по правой кнопке..