Страница 1 из 1

Проблема с интерфейсом

Добавлено: 13 фев 2014, 13:43
Руслан
Делаю интерфейс, ругается на поле cmastfio, мол нет такой функции, поля или метода. В чем лажа?

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

vipInterface sfKKmcForm;
public :
  function fmastFIO(cmast : comp) : string;
end;
interface sfKKmcForm 'Керосиновый контроль - по изделию' (,,sciAqaSwitchItemName);
show at (1,10,50,18);

create view
  var d1, d2 : date;
  cmast : comp;
  (cmastFIO )
as select
	fmastFIO(cmast),
* from sfpersons, katmc, sfdocs, sfmclist, sfdefects, exclassval, exclassseg
where
((
  5 == katmc.isarch
  and sfdocs.atl_nrec == sfmclist.csfdoc
  and sfmclist.atl_nrec == sfdefects.csfmclist
))
;

  form SF("SF.out");
//*******************************************************************************

  /*
  *******************************************************************************
  Название:        fmastFIO(cmast : comp) : string;
  Описание:        Функция поиска фамилии сотрудника
  Входные пар-ры:  cmast : comp; - nrec сотрудника в sfpersons
  Выходные пар-ры: ФИО сотрудника
  *******************************************************************************
  */
	function fmastFIO(cmast : comp) : string;
	{
	  if GetFirst sfpersons where  (( cmast == sfpersons.atl_nrec )) = tsOk
		fmastFIO := sfpersons.sffio;
	  else fmastFIO := '';
	}

  //******************************************************************************


  screen scKKmc;
    table sfpersons;
    fields
      d1 : noProtect;
      d2 : noProtect;
      сmastFIO : PickButton, protect;
    buttons
      cmOk;
<<


        с .@@@@@@@@@@@ по .@@@@@@@@@@@
        Мастер   .@@@@@@@@@@@@@@@@@@@@


               <. Сформировать .>
>>
  end;

  handleEvent
    cmInit :
    {
      cmast := 0;
      d1 := Cur_Date;
      d2 := Cur_Date;
    }
	cmPick :
		{
		  case CurField of
			#cmastFIO : RunInterface(iMasters, cmast, 1);
		  end;
		}
    cmOk :
    {
      SF.SetGroup('KKMC');

      SF.Write(d1);
      SF.Write(d2);
      SF.Write(cmast);
	  SF.Write(cmastFIO);
      SF.Write('');


      _loop sfdocs where (( d1 <<= sfdocs.datedoc and d2 >>= sfdocs.datedoc and (/*8 = sfdocs.typedoc or*/ 2 = sfdocs.typedoc) ))
      { #include %src%\make\form\loopAll.vip
      }

      SF.PutEvent(feBreak);
      if (SF.error) SF.Reinit;
      else SF.ShowFile('');
    }
  end;
end.

Re: Проблема с интерфейсом

Добавлено: 13 фев 2014, 14:06
edward_K
А в какой строке то ругается? Точный текст плиз как. Очень часто причина в русской "С" - это пока все, что можно сказать по такому кол-ву инфы.

Re: Проблема с интерфейсом

Добавлено: 13 фев 2014, 14:12
Руслан
Ругается на эту часть кода:

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

  screen scKKmc;
    table sfpersons;
    fields
      d1 : noProtect;
      d2 : noProtect;
[b]      сmastFIO : PickButton, protect;[/b]

Re: Проблема с интерфейсом

Добавлено: 13 фев 2014, 14:37
Руслан
Спасибо edward_k, дело было в русском символе в cmastfio...

Re: Проблема с интерфейсом

Добавлено: 14 фев 2014, 13:56
Алексей
когда так случается, перебиваю всю проблемную строчку заново, полностью :)