Доп. пункт в меню
Модераторы: m0p3e, edward_K, Модераторы
Re: Доп. пункт в меню
edward_K , а можно аналогично по меню интерфейса 'L_BASEDOC::VSCHETB' подсказать... как формируется выпадающее меню? Заранее спасибо.
			
			
									
						
							I just shot John Lennon
			
						- 
				edward_K
- Заслуженный деятель интернет-сообщества
- Сообщения: 5189
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: Доп. пункт в меню
Код: Выделить всё
cmHotKeys:
  case CurTable of
  //--------------
    #BaseDoc:
      {
        ChangeEnabledCommands(true);
        var bSopr108: boolean;
        bSopr108 := RecordExists KatSopr where (( StepDoc.NRec == KatSopr.cStepDoc
                                              AND word(108)    == KatSopr.VidSopr )) = tsOk;
        var sDynMenuName: string;
        sDynMenuName := if (bSopr108, 'L_BaseDoc::mnuVschetb108', 'L_BaseDoc::mnuVschetb');
        sDynMenuName += ';SEPARATOR;L_BaseDoc::mnuVschetbCont';
        // динамически добавляется меню
        // связь с книгой финансовых операций (Sanny)
        sDynMenuName := MakeMenuWithViewFpOborot(sDynMenuName);
        // высвобождение платежа (Garik)
        sDynMenuName += ';SEPARATOR;L_BaseDoc::mnuVSchetBDORet';
        // просмотр налоговых накладных
        if (wGetTune('Country') = ccUkr)
          sDynMenuName += ';SEPARATOR;L_BaseDoc::mnuNalNaklDoc';
        PutHotCommand(RunDynMenu(sDynMenuName + ';SEPARATOR;C_Common::AttrClass_HotKeys'));
      }
  //--------------
    else
      {
        if IsValid(#KatStroy)
          SetEnableCommand(cmDocBas, FALSE);
        if NOT UKS_Used
          SetEnableCommand(cmMulSelDO, FALSE);
        else
          SetEnableCommand(cmValue41, FALSE);
        ChangeEnabledCommands(SpStep.PrMc <> 1 AND KatUsl.TypeUsl = 1);
        SetEnableCommand(cmNal, SpStep.PrMc = 1);
        var sDynMenuName: string;
        if ( (CurField = #NamTovar) or (CurField = #Nomenkl) )
        {
          sDynMenuName := 'L_BaseDoc::mnuVschetb1';
          CASE wGetTune('OPER.BUY.CTRLF3') OF
            0 : sDynMenuName += ';SEPARATOR;L_BaseDoc::mnuVschetb1_2';
            1 : sDynMenuName += ';SEPARATOR;L_BaseDoc::mnuVschetb1_1';
          END ;
          PutHotCommand(RunDynMenu(sDynMenuName + ';SEPARATOR;L_BaseDoc::mnuVschetb1_3'));
        }
        else
          PutHotCommand(RunMenu('mnuVschetb3'));
        ChangeEnabledCommands(TRUE);
        SetEnableCommand(cmDocBas, TRUE);
        SetEnableCommand(cmNal   , TRUE);
      }
  //--------------
  end; // case