Код: Выделить всё
#!====================================================================================
#UTILITY(FsMakeBlancFunctions,'Сформировать заглушки.')
#!====================================================================================
#DISPLAY('Эта утилита создает заглушки')
#DISPLAY('для всех процедур модуля')
#DISPLAY('')
#PROMPT('Window',CHECK),%FsTemplWind, DEFAULT(1), AT(5)
#PROMPT('Browse',CHECK),%FsTemplBrw, DEFAULT(1), AT(5)
#PROMPT('Frb',CHECK),%FsTemplFrb, DEFAULT(1), AT(5)
#!
#DECLARE(%FsNum)
#DECLARE(%FsOk)
#DECLARE(%FsApplication)
#DECLARE(%FsApplicationDll)
#DECLARE(%FsMess)
#DECLARE(%FsStr)
#!
#SET(%FsApplication,%Application & '.clw')
#SET(%FsApplicationDll,%Application & '.dll')
#FOR(%Module)
  #SET(%FsNum,0)
  #SET(%FsOk,0)
  #FOR(%ModuleProcedure)
    #SET(%FsNum,%FsNum+1)
    #FIX(%Procedure,%ModuleProcedure)
    #IF(%ProcedureTemplate='Window' and %FsTemplWind=1)
    #ELSIF(%ProcedureTemplate='Browse' and %FsTemplBrw=1)
    #ELSIF(%ProcedureTemplate='ReportManager(FominReportBuilder)' and %FsTemplFrb=1)
    #ELSIF(%ProcedureTemplate='RuntimeReport(FominReportBuilder)' and %FsTemplFrb=1)
    #ELSE
       #CYCLE
    #ENDIF
    #IF(%FsNum>1 and %FsOk=0)
       #BREAK
    #ENDIF   
    #IF(%FsNum=1)
      #CREATE(%ModuleBase & '.clw')
      #SET(%FsOk,1)
    #ENDIF
    #SET(%FsStr,'')
    #FOR(%ProcedureParameters)
       #IF(%FsStr<>'')
          #SET(%FsStr,%FsStr & ',')
       #ENDIF   
       #SET(%FsStr,%FsStr & %ProcedureParameterName)
    #ENDFOR
                     MEMBER('%FsApplication')
%Procedure PROCEDURE(%FsStr)                     
  CODE
     #SET(%FsMess,'Процедура отключена. Модуль ' & %FsApplicationDll & ', процедура ' & %Procedure & ' - ' & %ProcedureDescription)
     Message('%FsMess') 
     #IF(%ProcedureType='FUNCTION')
     return(0)
     #ENDIF
  #ENDFOR
  #IF(%FsOk=1)
    #CLOSE
  #ENDIF
#ENDFOR  
