Страница 1 из 1
					
				Pickcatalog2
				Добавлено: 14 янв 2005, 11:38
				 oiko
				Может ли кто-нибудь поделится параметрами вызова Pickcatalog2(integer,comp,comp) для версии 711? Интересует множественный выбор структурных единиц штатного расписания. Выбор одной единици осуществляется вроде как (-11,0,0).
			 
			
					
				Re: Pickcatalog2
				Добавлено: 19 янв 2005, 04:56
				 AtlantG
				Interface PickCatalog2 ' „R„Ѓ„‚„p„r„Ђ„‰„~„y„{„y ' escclose, doaccept, cyan;
  show at (,1,,26);
....
....
As select
  if ((IsValid(tnCatalogs) and (isMarkMode)),
   (if (SearchMarker(Markers, Catalogs.NRec, IndexNo) = True, 'Ѓг',' ')),' '),
  Catalogs.*
,ExtCatLinks.*, KatPodr.*
From
  Catalogs,
  synonym Catalogs Catal,
  synonym Catalogs Catalogs2(readonly),
  synonym Catalogs RankCat (ReadOnly),
  synonym Catalogs Catalogs3(readonly),
  synonym Catalogs MyCatalogs(readonly)
  ,ExtCatLinks, KatPodr
Where
((
                       Node  == Catalogs.cParent and
            Catalogs.cParent == Catal.Nrec
  and Comp(Catalogs.CatData) == RankCat.NRec
)) and
    (wOffInvisibleDel=0 or CAtalogs.DATOK=date(0,0,0))  // Galpro! 
order byName by Catalogs.Name
order byCode by Catalogs.Code
bounds CatBrowsebyName as  integer(0)  == Catalogs.lPr and
                       CurMainLink == Catalogs.MainLink  
                       ordered by Catalogs.Name
bounds CatBrowsebyCode as integer(0)  == Catalogs.lPr and
                       CurMainLink == Catalogs.MainLink
                       ordered by Catalogs.Code;
  parameters
    iEntryPoint, // „„„Ђ„‰„{„p „r„‡„Ђ„t„p („{„Ђ„t „{„p„„„p„|„Ђ„s„p)
    cCurPos,     // NRec „„„u„{„…„‹„u„z („r„‡„Ђ„t), „r„Ќ„q„‚„p„~„~„Ђ„z („r„Ќ„‡„Ђ„t) „Ѓ„Ђ„x„y„€„y„y
    parmode;     // „r„‡„Ђ„t: 0 - „‚„u„w„y„} „r„Ќ„q„Ђ„‚„p
                       // 1 - „‚„u„w„y„} „‚„u„t„p„{„„„y„‚„Ђ„r„p„~„y„‘
                       // 2 - „‚„u„w„y„} „r„Ќ„q„Ђ„‚„p „ѓ „{„~„Ђ„Ѓ„{„Ђ„z „Ѓ„Ђ „r„ѓ„u„} „‚„u„s„y„Ђ„~„p„}
                       // ** „Ђ„ѓ„„„p„|„Ћ„~„Ќ„u „x„~„p„‰„u„~„y„‘ „y„ѓ„Ѓ„Ђ„|„Ћ„x„…„ђ„ѓ„‘ „„„Ђ„|„Ћ„{„Ђ „r „K„p„t„‚„p„‡!
                       // 3 - „r„Ќ„q„Ђ„‚ „y„x „ѓ„Ѓ„y„ѓ„{„p „Ђ„„„‰„u„„„Ђ„r
                       // 5 - „r„ѓ„u „{„p„„„p„|„Ђ„s„y, „‚„u„t„p„{„„„y„‚„Ђ„r„p„~„y„u
                       // 6 - „r„ѓ„u „Ђ„„„‰„u„„„Ќ, „‚„u„t„p„{„„„y„‚„Ђ„r„p„~„y„u
                       // 7 - „r„Ќ„q„Ђ„‚ „t„|„‘ „t„Ђ„Ѓ. „„„p„q„|„y„€
                           // „Ђ„ѓ„„„p„|„Ћ„~„Ќ„u „t„Ђ„q„p„r„|„u„~„Ќ BK
                       // 100-106 - „p„~„p„|„Ђ„s„y„‰„~„Ќ „r„Ќ„Љ„u„ѓ„„„Ђ„‘„‹„y„}, „„„Ђ„|„Ћ„{„Ђ „ѓ „Ђ„q„‚„p„q„Ђ„„„{„Ђ„z
                       //           „}„p„‚„{„y„‚„Ђ„r„{„y („}„~„Ђ„w„u„ѓ„„„r„u„~„~„Ќ„z „r„Ќ„q„Ђ„‚)
			 
			
					
				Re: Pickcatalog2
				Добавлено: 19 янв 2005, 04:57
				 AtlantG
				parameters
    iEntryPoint, // точка входа (код каталога)
    cCurPos,     // NRec текущей (вход), выбранной (выход) позиции
    parmode;     // вход: 0 - режим выбора
                       // 1 - режим редактирования
                       // 2 - режим выбора с кнопкой по всем регионам
                       // ** остальные значения используюся только в Кадрах!
                       // 3 - выбор из списка отчетов
                       // 5 - все каталоги, редактирование
                       // 6 - все отчеты, редактирование
                       // 7 - выбор для доп. таблиц
                           // остальные добавлены BK
                       // 100-106 - аналогичны вышестоящим, только с обработкой
                       //           маркировки (множественный выбор)
			 
			
					
				Re: Pickcatalog2
				Добавлено: 19 янв 2005, 05:03
				 AtlantG
				Выбранные элементы в маркере
// Множественный выбор
if (isMarkMode) // множественный выбор
Markers := InitMarker('CatalogsMarker', 8, 200, 10)
			 
			
					
				Re: Pickcatalog2
				Добавлено: 19 янв 2005, 05:07
				 AtlantG
				а вот отчет по штатному с использ маркера 
<......>
      Markers1 := InitMarker('CatalogsMarker1', 8, 200, 10);
      nRecRasesStS := 0;
      DeptMarker := InitMarker('CatalogsMarker', 8, 200, 10);
      CopyMarkers(Markers1, DeptMarker);
      DoneMarker(DeptMarker, 'CatalogsMarker');
      RunInterface(PickCatalog2, iEntryPoint, nRecRasesStS, cParMode);
      DeptMarker := InitMarker('CatalogsMarker', 8, 200, 10);
      CopyMarkers(DeptMarker, Markers1) ;
      DoneMarker(DeptMarker, '');
<......>
// начало кода для подсчета количества штатных единиц и месячного фонда оплаты труда и вывод его в заголовок
  nRecPodr := GetCatalogsNRec(-11);
  _loop CatalogPodr
  {
  if (modifier GetFirst StaffStruct where  ((    CatalogPodr.cPodr == StaffStruct.Department
                                           )) = tsOK)
  do {
       sumWorkStations := sumWorkStations + StaffStruct.WorkStations;
// доплаты в первую графу
       sumRaise1 := 0;
       Markers1 := InitMarker('CatalogsMarker1', 8, 200, 10);
       countMark := GetMarkerCount(Markers1);
       for (i := 0; i < countMark; i := i + 1)
          {
          GetMarker(Markers1, i, Item)
          if (modifier GetFirst RaiseStS  where ((
                      StaffStruct.NRec == RaiseStS.StaffStr    and
                      Item             == RaiseStS.RaiseType
                      )) = tsOK)
             {
             if (modifier GetFirst RaiseAlg  where ((
                      RaiseStS.NRec == RaiseAlg.RaiseStSt
                      )) = tsOK)
                {
                if (RaiseAlg.RaiseAttr = 2)
                  {
                  sumRaise1 := sumRaise1 + StaffStruct.TaxRate * RaiseAlg.Sum/100;
                  }
                else
                  sumRaise1 := sumRaise1 + RaiseAlg.Sum;
                }
             }
          }
       DoneMarker(Markers1, '');
			 
			
					
				Re: Pickcatalog2
				Добавлено: 20 янв 2005, 11:42
				 oiko
				Большой Thanks
			 
			
					
				
				Добавлено: 06 июн 2008, 10:04
				 RAJAH
				А в 8.1 интерфейс Z_STAFFCAT::PICKCATALOG2 какие параметры имеет? По-моему, код каталога теперь второй параметр...
			 
			
					
				
				Добавлено: 06 июн 2008, 10:27
				 edward_K
				exe\GalDoc\Z_StaffCat.chm
Interface Z_STAFFCAT::PickCatalog2
Выбор, редактирование системных каталогов 
Параметры
IENTRYPOINT : Integer 
CCURPOS : Comp 
PARMODE : Comp 
==============
для Parmode  возможные  значения не изменились - смотри выше
			 
			
					
				Re: Pickcatalog2
				Добавлено: 05 апр 2011, 17:16
				 BlazeBio
				Как можно сделать фильтр, или активировать существующий фильтр в интерфейсе Z_STAFFCAT::PICKCATALOG2 при вызове из своего собственного интерфейса, чтобы были видны только "Структурные единицы штатного расписания"? А то сейчас при 
Код: Выделить всё
			Runinterface('Z_STAFFCAT::PICKCATALOG2',-11,444,0);
Отображается полный список каталогов.  

 
			
					
				Re: Pickcatalog2
				Добавлено: 05 апр 2011, 17:56
				 RAJAH
				Код: Выделить всё
RunInterface('Z_STAFFCAT::PICKCATALOG2', 0, 1D7h, 100)
У меня так "Структурные единицы штатного расписания" вызываются...
 
			
					
				Re: Pickcatalog2
				Добавлено: 05 апр 2011, 19:33
				 BlazeBio
				Оказалось, как обычно моя забывчивость виновата. Корректировал в одном интерфейсе, а вызывал из другого, без параметров.  
