SASGlobalForumWorkshopPresentation

上传人:hs****ma 文档编号:568422168 上传时间:2024-07-24 格式:PPT 页数:59 大小:1.69MB
返回 下载 相关 举报
SASGlobalForumWorkshopPresentation_第1页
第1页 / 共59页
SASGlobalForumWorkshopPresentation_第2页
第2页 / 共59页
SASGlobalForumWorkshopPresentation_第3页
第3页 / 共59页
SASGlobalForumWorkshopPresentation_第4页
第4页 / 共59页
SASGlobalForumWorkshopPresentation_第5页
第5页 / 共59页
点击查看更多>>
资源描述

《SASGlobalForumWorkshopPresentation》由会员分享,可在线阅读,更多相关《SASGlobalForumWorkshopPresentation(59页珍藏版)》请在金锄头文库上搜索。

1、Separating the Interface from the Engine: Creating Custom Add-in Tasks for SAS Enterprise GuidePeter EberhardtFernwood Consulting Group Inc.Separating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupAgendaIntroductionDemoRequi

2、rementsGetting StartedInterfacesExamplesWrap-upSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupIntroductionHistory of SAS and open environmentWhat is a custom add-inHow does an add-in compare to a SPSeparating the I

3、nterface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupIntroductionPre v8Multi-PlatformStand aloneSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupIntrodu

4、ctionv8IOMOpened SASSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupIntroductionv9StudiosDI, Cube StudioJava clientSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Ebe

5、rhardt, Fernwood Consulting GroupIntroductionEnterprise Guide 4.1.NET applicationIntegration into MS Office“SAS is too hard to use”Drag-and-Drop InterfaceProject orientedSAS Tasks encapsulate underlying PROC syntaxProcess flows link Tasks and DataSeparating the Interface from the Engine:Creating Cus

6、tom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupIntroductionSAS EnterpriseGuideSASon WindowsSASon MainframeSASon UNIXCodeResultsSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupIntrodu

7、ctionAn Enterprise Guide project can be thought of as a basket, or container:HealthcareTo which you assign a nameIn which you place data source(s)Within which you define tasksSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulti

8、ng GroupIntroductionInterfaces Part 1EG Custom Add-in TasksFriendly front-end to a existing SAS programmesAccess SAS and non-SAS resourcesPackage SAS PROCS not part of EGSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting Gr

9、oupIntroductionInterfacesSAS Stored ProcessSAS programme that is centrally managedTwo componentsMetadataprogrammeRuns on a serverSimple user interfaceSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupAgendaIntroductio

10、nDemoRequirementsGetting StartedInterfacesExamplesWrap-upSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupAgendaIntroductionDemoRequirementsGetting StartedInterfacesExamplesWrap-upSeparating the Interface from the En

11、gine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupRequirementsFundamentalsVisual Studio.NET Framework v1.1EG 4.1A problem or solutionSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Con

12、sulting GroupRequirementsImplement InterfacesSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupMain Entry: interfacePronunciation: in-t&r-fAs Function: noun 1 : a surface forming a common boundary of two bodies, space

13、s, or phases 2 a : the place at which independent and often unrelated systems meet and act on or communicate with each other b : the means by which interaction or communication is achieved at an interface - interfacial /in-t&r-fA-sh&l/ adjective Separating the Interface from the Engine:Creating Cust

14、om Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupMain Entry: interactionPronunciation: in-t&r-ak-sh&n Function: noun : mutual or reciprocal action or influence - interactional /-shn&l, -sh&-n&l/ adjective Separating the Interface from the Engine:Creating Custom Add-in T

15、asks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupRequirementsInterfaces Part 2Separates the name of a method from its implementationContract between your programme and SASSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fe

16、rnwood Consulting GroupAgendaIntroductionDemoRequirementsGetting StartedInterfacesExamplesWrap-upSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupGetting StartedProject templatesAvailable from the SAS siteAdds a new

17、project type to Visual StudioCreates a project with the required interfacesSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupGetting StartedRules to Remember in Visual StudioThe project name and directoryWhen you crea

18、te the new projectRename the default files and classesCustomTask1, CustomTaskForm1Change the properties of the add-in referenceChange the strings in ISASTaskDescriptionSearch for PLACEHOLDERSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fe

19、rnwood Consulting GroupGetting StartedDemoSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupDemo creating a project11.New projectSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Gui

20、de Peter Eberhardt, Fernwood Consulting GroupDemo creating a project121.Project Type2.SAS EG 4 AddIn (from SAS template)3.Project Name and Location3Separating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupDemo creating a pro

21、ject11.Default File Names need to be changedSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupDemo creating a project11.Names in the project need to be changedSeparating the Interface from the Engine:Creating Custom A

22、dd-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupDemo creating a project11.References2.Local Copy property set to FALSE2Separating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupDemo creating a proje

23、ct11.Project PropertiesSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupDemo creating a project11.Configuration Propertiesset Debug Mode to ProgramNOTE: click Apply after changing the Debug Mode to un-grey the Start

24、Program propertySeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupDemo creating a project11.Configuration PropertiesNavigate to your EG executableSeparating the Interface from the Engine:Creating Custom Add-in Tasks f

25、or Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupDemo creating a project11.Change the descriptions in the source codeSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupDemo creating a project11.Strings are

26、 changedSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupDemo creating a project11.Build the projectSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood

27、 Consulting GroupDemo creating a project11.Success!Separating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupAgendaIntroductionDemoRequirementsGetting StartedInterfacesExamplesWrap-upSeparating the Interface from the Engine:C

28、reating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfacesSeparates the name of a method from its implementationContract between your programme and SASSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt

29、, Fernwood Consulting GroupInterfacesYou agree you will implementISASTaskAddinISASTaskDescriptionISASTaskYou can implement if you wantISASTaskSubmitSinkISASTaskDataSinkSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting Grou

30、pInterfacesISASTaskAddinThis connects the application (i.e. Enterprise Guide) to your Add-in. It provides basic information back to EG.EG will not recognize your add-in if you do not implement this interface.The template automatically creates all the members of the interface for you.Separating the I

31、nterface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfacesISASTaskDescriptionThis interface is used by the application to determine basic task information which is not dependent on the task state. ISASTaskDescription2is an optional

32、 extension of this interface with a few additional properties for advanced features.Implement one or the otherSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfaces - ISASTaskPublic PropertiesLabelThe label of a

33、n instance of the task as it appears in the project.Both a “property set” and a “property get” have to be implementedOutputDataCountThe number of output datasets the task expects to create.Only a “property get” has to be implementedSeparating the Interface from the Engine:Creating Custom Add-in Task

34、s for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfacesISASTaskThis interface is used by the application to control the runtime state of the add-inSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting Group

35、InterfacesISASTask2Extends ISASTask with additional properties and methodsImplement SASTask OR SASTask2Separating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfacesPropertiesISASTaskAddinISASTaskDescriptionISASTaskYou

36、can implement if you wantISASTaskSubmitSinkISASTaskDataSinkSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfacesISASTaskSubmitSink Supplies notifications to the add-in that the input data has changed, or that i

37、t needs to take some action regarding output data that it intends to create. Separating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfacesISASTaskDataSink Supplies notifications to the add-in that the input data has ch

38、anged, or that it needs to take some action regarding output data that it intends to create. Separating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfacesSAS agrees to implementISASTaskConsumerISASTaskDataISASTaskDataA

39、ccessorISASTaskDataDataColumnSAS agrees it might implementISASTaskSubmitISASTaskUtilitiesSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfacesISASTaskConsumerProvides information about what the application supp

40、orts and access to other supported interfaces. Also provides access to options specific to the particular instance of the add-in.The implementation of this interface by a host application is required, although not all properties and methods are required to be supported. Separating the Interface from

41、 the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfacesISASTaskDataThese interfaces allow the task to obtain information about the active data. Different host applications might not be able to provide values for some of these methods.Separat

42、ing the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfacesISASTaskDataAccessorThese methods allow the task to access the data values in a specific data object.Separating the Interface from the Engine:Creating Custom Add-in

43、 Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfacesISASTaskDataColumnProvides information about a single column in a data sourceSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfaces

44、SAS agrees to implementISASTaskConsumerISASTaskDataISASTaskDataAccessorISASTaskDataDataColumnSAS agrees it might implementISASTaskSubmitISASTaskUtilitiesSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfacesISAS

45、TaskSubmitThis interfaces allow the task to submit SAS code from within the task.Separating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfacesISASTaskUtilitiesThis interfaces allow the task to surface some utility func

46、tionality to the task.Separating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupInterfacesExamplesSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting

47、 GroupRecapDownload the Templates from SASCreate the initial projectChange the default name and location of the projectChange the string descriptorssFriendlyName etcSet the Copy Local property to falseCompile the projectSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterp

48、rise Guide Peter Eberhardt, Fernwood Consulting GroupRecapSet the options for the projectdebug using programCompile and step through with the debuggerRegister the add-in with the Add-in managerMake sure it runsSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide

49、 Peter Eberhardt, Fernwood Consulting GroupRecapDo your thing!Change codeCompileDebugCopy completed DLL to the deployment folderC:Program FilesSASShared FilesBIClientTasksCustomSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consul

50、ting GroupRecapGo for a beverage of your choice to celebrate a job well doneSeparating the Interface from the Engine:Creating Custom Add-in Tasks for Enterprise Guide Peter Eberhardt, Fernwood Consulting GroupCopyright 2007, SAS Institute Inc. All rights reserved. SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. indicates USA registration. peterfernwood.ca

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号