Проблемы c выбором МЦ в НОП, Галактика 7.12

ПНР и сопровождение

Модераторы: m0p3e, edward_K, Модераторы

Ответить
Semi-bit
Постоянный обитатель
Сообщения: 123
Зарегистрирован: 01 фев 2007, 12:45
Откуда: Магнитогорск
Контактная информация:

Проблемы c выбором МЦ в НОП, Галактика 7.12

Сообщение Semi-bit »

Обнаружили такую проблемку при выборе МЦ в Накладной на отпуск в производство.
Изображение
То есть, при последовательном выборе МЦ Insert'ом некоторые пропускаются. Прошу объяснить, чем могло быть вызвано такое поведение программы. Сразу предупреждаю, что триггеров у нас много на этих таблицах висит, и все кривые напрочь, так что очень надеюсь, что проблема не в них. КИСы предлагают не отображать эти проблемные МЦ, но я в данном модуле не очень хорошо разбираюсь, и просто не знаю, как это сделать.
Испытываю траблы с даблами
ВИП — Велосипедо-Изобретательская Парадигма
САППОРТ — Сборище Абсолютно Пустых Посредственно Образованных Ржущих Троллей
Алексей
Местный житель
Сообщения: 2896
Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область

Re: Проблемы c выбором МЦ в НОП, Галактика 7.12

Сообщение Алексей »

7.12.... давно это было... а может эти МЦ были ранее отпущены другой накладной и стоит контроль по отпуску по ДО, т.е. не больше чем в ДО указано? (сами настройки не спрашивайте, не вспомню)
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Проблемы c выбором МЦ в НОП, Галактика 7.12

Сообщение edward_K »

getifccurrentfieldname в окне выбора.
Semi-bit
Постоянный обитатель
Сообщения: 123
Зарегистрирован: 01 фев 2007, 12:45
Откуда: Магнитогорск
Контактная информация:

Re: Проблемы c выбором МЦ в НОП, Галактика 7.12

Сообщение Semi-bit »

Алексей
Но если они уже отпущены, разве не должно быть количество по нулям?

edward_K
GETMCSOPR.BRGETMCSOPR.PICK.PICKKOL
Испытываю траблы с даблами
ВИП — Велосипедо-Изобретательская Парадигма
САППОРТ — Сборище Абсолютно Пустых Посредственно Образованных Ржущих Троллей
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Проблемы c выбором МЦ в НОП, Галактика 7.12

Сообщение edward_K »

да. в 810 уже фейс переделан и формирование выбора зависит от настройки boGetTune('Doc.MakeKol').
Мож у кого то завалялся GetMcSop.Vip от 712 - смотреть нужно событие cmMarkUnMark
Semi-bit
Постоянный обитатель
Сообщения: 123
Зарегистрирован: 01 фев 2007, 12:45
Откуда: Магнитогорск
Контактная информация:

Re: Проблемы c выбором МЦ в НОП, Галактика 7.12

Сообщение Semi-bit »

edward_K
Однако, нашёлся :)

Код: Выделить всё

cmMarkUnMark :
  {
    if (isValid(#Pick))  
      delete current Pick
    else
     {
       MakePickTable555(SpStep.KolSkl-PreviursKolSopr);
  #ifdef ATL51  
       RedrawCurrentAndGo (GetCurrentFormat,true);
  #else
       if (GetNext SpStep = tsOk) 
         CallToNeighBours(cmPosDown,#SpStep);
  #end
     }
    rescanpanel(#SpStep);
  }

Код: Выделить всё

function PreviursKolSopr : double;
{
  RunInterface('iRasNeotg',SpStep.nRec,PreviursKolSopr);
  If PreviursKolSopr > SpStep.KolSkl
    PreviursKolSopr := SpStep.KolSkl;
}

Procedure MakePickTable555(KOL:double);
{
  Pick.PickKol := KOL;

  if not isValid(tnPick)
    {
      Pick.wList := 555;
      Pick.cRec := SpStep.NRec;
      Pick.nRec := 0;
      if Pick.PickKol>0
        Insert Current Pick;
    }
  else
    if Pick.PickKol > 0
      Update current Pick;
    else
      delete current Pick;
}

Код: Выделить всё

!╔═════════════════════════════════════════════════════╗
!║  Расчет распределенного кол-ва по позиции ДО ранее  ║
!║  сформированными сопроводительными док-тами         ║
!╚═════════════════════════════════════════════════════╝

Interface iRasNeotg,AlwaysReturn,cacheable;

Create view 
Var
  c1 :comp;
  D1:double;
From
  SpSopr,SpStep,KatOtpED,
  synonym KatOtpED KatOtpED2
Where
((
  c1            == SpStep.nRec     and
  SpStep.nRec   == SpSopr.cSpStep  and 
  SpStep.cOtpEd == KatOtpEd.NRec   and
  SpSopr.cOtpEd == KatOtpEd2.NRec  
))                                           
;

parameters
  c1,//spstep.nrec
  D1;//распределенное кол-во 

Handleevent
cmInit:
  {
    D1 := 0;

    if ((SpStep.PrMC > 1) and not boGetTune('Doc.CtrUslAktDo'))
      {
        abort;
        exit; //нет контроля кол.Услуги
      }

    if ((SpStep.PrMC = 1) and not boGetTune('Doc.MakeKol'))
      {
        abort;
        exit; //нет контроля кол.МЦ
      }

    _LOOP SpSopr
      D1 := D1 + SpSopr.KolOpl * if(KatOtpEd2.koef = 0, 1, KatOtpEd2.koef) 
                               / if(KatOtpEd.koef  = 0, 1, KatOtpEd.koef);

    abort;
  } 
end;

end.     
Всем спасибо, дальше сам разберусь :smile:
Последний раз редактировалось Semi-bit 18 июн 2013, 11:41, всего редактировалось 1 раз.
Испытываю траблы с даблами
ВИП — Велосипедо-Изобретательская Парадигма
САППОРТ — Сборище Абсолютно Пустых Посредственно Образованных Ржущих Троллей
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Проблемы c выбором МЦ в НОП, Галактика 7.12

Сообщение edward_K »

Да уж - в лучших традициях медленности кода. То есть показываются то все, а в отбор идут тока те по которым есть остаток.
Можно конечно попробовать накладывать поль.фильтр по значению функции PreviursKolSopr, но для этого нужно чтобы она возвращала значение в поле.
В общем на 712 как то без шансов или написать свой фейс на подмену стандартного.
Semi-bit
Постоянный обитатель
Сообщения: 123
Зарегистрирован: 01 фев 2007, 12:45
Откуда: Магнитогорск
Контактная информация:

Re: Проблемы c выбором МЦ в НОП, Галактика 7.12

Сообщение Semi-bit »

Тему можно закрывать. Скорее всего, будем фейс писать.
Испытываю траблы с даблами
ВИП — Велосипедо-Изобретательская Парадигма
САППОРТ — Сборище Абсолютно Пустых Посредственно Образованных Ржущих Троллей
Ответить