CRAXDDRT.TLH
上传用户:daihe3030
上传日期:2013-02-17
资源大小:2668k
文件大小:579k
源码类别:

打印编程

开发平台:

Visual C++

  1.     virtual HRESULT __stdcall put_CloseAtPageBreak (
  2.         VARIANT_BOOL pBool ) = 0;
  3.     virtual HRESULT __stdcall get_KeepTogether (
  4.         VARIANT_BOOL * pBool ) = 0;
  5.     virtual HRESULT __stdcall put_KeepTogether (
  6.         VARIANT_BOOL pBool ) = 0;
  7.     virtual HRESULT __stdcall get_DataType (
  8.         enum CRGraphDataType * pDataType ) = 0;
  9.     virtual HRESULT __stdcall get_GraphType (
  10.         enum CRGraphType * pGraphType ) = 0;
  11.     virtual HRESULT __stdcall put_GraphType (
  12.         enum CRGraphType pGraphType ) = 0;
  13.     virtual HRESULT __stdcall get_Title (
  14.         BSTR * ppTitle ) = 0;
  15.     virtual HRESULT __stdcall put_Title (
  16.         BSTR ppTitle ) = 0;
  17.     virtual HRESULT __stdcall get_SubTitle (
  18.         BSTR * ppSubTitle ) = 0;
  19.     virtual HRESULT __stdcall put_SubTitle (
  20.         BSTR ppSubTitle ) = 0;
  21.     virtual HRESULT __stdcall get_FootNote (
  22.         BSTR * ppFootNote ) = 0;
  23.     virtual HRESULT __stdcall put_FootNote (
  24.         BSTR ppFootNote ) = 0;
  25.     virtual HRESULT __stdcall get_GroupsTitle (
  26.         BSTR * ppGroupsTitle ) = 0;
  27.     virtual HRESULT __stdcall put_GroupsTitle (
  28.         BSTR ppGroupsTitle ) = 0;
  29.     virtual HRESULT __stdcall get_SeriesTitle (
  30.         BSTR * ppSeriesTitle ) = 0;
  31.     virtual HRESULT __stdcall put_SeriesTitle (
  32.         BSTR ppSeriesTitle ) = 0;
  33.     virtual HRESULT __stdcall get_XAxisTitle (
  34.         BSTR * ppXAxisTitle ) = 0;
  35.     virtual HRESULT __stdcall put_XAxisTitle (
  36.         BSTR ppXAxisTitle ) = 0;
  37.     virtual HRESULT __stdcall get_YAxisTitle (
  38.         BSTR * ppYAxisTitle ) = 0;
  39.     virtual HRESULT __stdcall put_YAxisTitle (
  40.         BSTR ppYAxisTitle ) = 0;
  41.     virtual HRESULT __stdcall get_Y2AxisTitle (
  42.         BSTR * ppY2AxisTitle ) = 0;
  43.     virtual HRESULT __stdcall put_Y2AxisTitle (
  44.         BSTR ppY2AxisTitle ) = 0;
  45.     virtual HRESULT __stdcall get_MaxDataAxisValue (
  46.         double * pMaxDataAxisValue ) = 0;
  47.     virtual HRESULT __stdcall put_MaxDataAxisValue (
  48.         double pMaxDataAxisValue ) = 0;
  49.     virtual HRESULT __stdcall get_MinDataAxisValue (
  50.         double * pMinDataAxisValue ) = 0;
  51.     virtual HRESULT __stdcall put_MinDataAxisValue (
  52.         double pMinDataAxisValue ) = 0;
  53.     virtual HRESULT __stdcall get_MaxData2AxisValue (
  54.         double * pMaxData2AxisValue ) = 0;
  55.     virtual HRESULT __stdcall put_MaxData2AxisValue (
  56.         double pMaxData2AxisValue ) = 0;
  57.     virtual HRESULT __stdcall get_MinData2AxisValue (
  58.         double * pMinData2AxisValue ) = 0;
  59.     virtual HRESULT __stdcall put_MinData2AxisValue (
  60.         double pMinData2AxisValue ) = 0;
  61.     virtual HRESULT __stdcall get_MaxSeriesAxisValue (
  62.         double * pMaxSeriesAxisValue ) = 0;
  63.     virtual HRESULT __stdcall put_MaxSeriesAxisValue (
  64.         double pMaxSeriesAxisValue ) = 0;
  65.     virtual HRESULT __stdcall get_MinSeriesAxisValue (
  66.         double * pMinSeriesAxisValue ) = 0;
  67.     virtual HRESULT __stdcall put_MinSeriesAxisValue (
  68.         double pMinSeriesAxisValue ) = 0;
  69.     virtual HRESULT __stdcall get_DataPoint (
  70.         enum CRGraphDataPoint * pDataPoint ) = 0;
  71.     virtual HRESULT __stdcall put_DataPoint (
  72.         enum CRGraphDataPoint pDataPoint ) = 0;
  73.     virtual HRESULT __stdcall get_GroupAxisGridline (
  74.         enum CRGridlineType * pGroupAxisGridline ) = 0;
  75.     virtual HRESULT __stdcall put_GroupAxisGridline (
  76.         enum CRGridlineType pGroupAxisGridline ) = 0;
  77.     virtual HRESULT __stdcall get_SeriesAxisGridline (
  78.         enum CRGridlineType * pSeriesAxisGridline ) = 0;
  79.     virtual HRESULT __stdcall put_SeriesAxisGridline (
  80.         enum CRGridlineType pSeriesAxisGridline ) = 0;
  81.     virtual HRESULT __stdcall get_DataAxisGridline (
  82.         enum CRGridlineType * pDataAxisGridline ) = 0;
  83.     virtual HRESULT __stdcall put_DataAxisGridline (
  84.         enum CRGridlineType pDataAxisGridline ) = 0;
  85.     virtual HRESULT __stdcall get_Data2AxisGridline (
  86.         enum CRGridlineType * pData2AxisGridline ) = 0;
  87.     virtual HRESULT __stdcall put_Data2AxisGridline (
  88.         enum CRGridlineType pData2AxisGridline ) = 0;
  89.     virtual HRESULT __stdcall get_EnableShowLegend (
  90.         VARIANT_BOOL * pEnableShowLegend ) = 0;
  91.     virtual HRESULT __stdcall put_EnableShowLegend (
  92.         VARIANT_BOOL pEnableShowLegend ) = 0;
  93.     virtual HRESULT __stdcall get_LegendPosition (
  94.         enum CRLegendPosition * pLegendPosition ) = 0;
  95.     virtual HRESULT __stdcall put_LegendPosition (
  96.         enum CRLegendPosition pLegendPosition ) = 0;
  97.     virtual HRESULT __stdcall get_GraphDirection (
  98.         enum CRGraphDirection * pDirection ) = 0;
  99.     virtual HRESULT __stdcall put_GraphDirection (
  100.         enum CRGraphDirection pDirection ) = 0;
  101.     virtual HRESULT __stdcall get_PieSize (
  102.         enum CRPieSize * pPieSize ) = 0;
  103.     virtual HRESULT __stdcall put_PieSize (
  104.         enum CRPieSize pPieSize ) = 0;
  105.     virtual HRESULT __stdcall get_SliceDetachment (
  106.         enum CRSliceDetachment * pSliceDetachment ) = 0;
  107.     virtual HRESULT __stdcall put_SliceDetachment (
  108.         enum CRSliceDetachment pSliceDetachment ) = 0;
  109.     virtual HRESULT __stdcall get_BarSize (
  110.         enum CRBarSize * pBarSize ) = 0;
  111.     virtual HRESULT __stdcall put_BarSize (
  112.         enum CRBarSize pBarSize ) = 0;
  113.     virtual HRESULT __stdcall get_MarkerSize (
  114.         enum CRMarkerSize * pMarkerSize ) = 0;
  115.     virtual HRESULT __stdcall put_MarkerSize (
  116.         enum CRMarkerSize pMarkerSize ) = 0;
  117.     virtual HRESULT __stdcall get_MarkerShape (
  118.         enum CRMarkerShape * pMarkerShape ) = 0;
  119.     virtual HRESULT __stdcall put_MarkerShape (
  120.         enum CRMarkerShape pMarkerShape ) = 0;
  121.     virtual HRESULT __stdcall get_DataAxisNumberFormat (
  122.         enum CRNumberFormat * pDataAxisNumberFormat ) = 0;
  123.     virtual HRESULT __stdcall put_DataAxisNumberFormat (
  124.         enum CRNumberFormat pDataAxisNumberFormat ) = 0;
  125.     virtual HRESULT __stdcall get_Data2AxisNumberFormat (
  126.         enum CRNumberFormat * pData2AxisNumberFormat ) = 0;
  127.     virtual HRESULT __stdcall put_Data2AxisNumberFormat (
  128.         enum CRNumberFormat pData2AxisNumberFormat ) = 0;
  129.     virtual HRESULT __stdcall get_SeriesAxisNumberFormat (
  130.         enum CRNumberFormat * pSeriesAxisNumberFormat ) = 0;
  131.     virtual HRESULT __stdcall put_SeriesAxisNumberFormat (
  132.         enum CRNumberFormat pSeriesAxisNumberFormat ) = 0;
  133.     virtual HRESULT __stdcall get_AutoRangeDataAxis (
  134.         VARIANT_BOOL * pAutoRangeDataAxis ) = 0;
  135.     virtual HRESULT __stdcall put_AutoRangeDataAxis (
  136.         VARIANT_BOOL pAutoRangeDataAxis ) = 0;
  137.     virtual HRESULT __stdcall get_AutoRangeData2Axis (
  138.         VARIANT_BOOL * pAutoRangeData2Axis ) = 0;
  139.     virtual HRESULT __stdcall put_AutoRangeData2Axis (
  140.         VARIANT_BOOL pAutoRangeData2Axis ) = 0;
  141.     virtual HRESULT __stdcall get_AutoRangeSeriesAxis (
  142.         VARIANT_BOOL * pAutoRangeSeriesAxis ) = 0;
  143.     virtual HRESULT __stdcall put_AutoRangeSeriesAxis (
  144.         VARIANT_BOOL pAutoRangeSeriesAxis ) = 0;
  145.     virtual HRESULT __stdcall get_DataAxisDivisionMethod (
  146.         enum CRDivisionMethod * pDataAxisDivisionMethod ) = 0;
  147.     virtual HRESULT __stdcall put_DataAxisDivisionMethod (
  148.         enum CRDivisionMethod pDataAxisDivisionMethod ) = 0;
  149.     virtual HRESULT __stdcall get_Data2AxisDivisionMethod (
  150.         enum CRDivisionMethod * pData2AxisDivisionMethod ) = 0;
  151.     virtual HRESULT __stdcall put_Data2AxisDivisionMethod (
  152.         enum CRDivisionMethod pData2AxisDivisionMethod ) = 0;
  153.     virtual HRESULT __stdcall get_SeriesAxisDivisionMethod (
  154.         enum CRDivisionMethod * pSeriesAxisDivisionMethod ) = 0;
  155.     virtual HRESULT __stdcall put_SeriesAxisDivisionMethod (
  156.         enum CRDivisionMethod pSeriesAxisDivisionMethod ) = 0;
  157.     virtual HRESULT __stdcall get_DataAxisDivisionNumber (
  158.         long * pDataAxisDivisionNumber ) = 0;
  159.     virtual HRESULT __stdcall put_DataAxisDivisionNumber (
  160.         long pDataAxisDivisionNumber ) = 0;
  161.     virtual HRESULT __stdcall get_Data2AxisDivisionNumber (
  162.         long * pData2AxisDivisionNumber ) = 0;
  163.     virtual HRESULT __stdcall put_Data2AxisDivisionNumber (
  164.         long pData2AxisDivisionNumber ) = 0;
  165.     virtual HRESULT __stdcall get_SeriesAxisDivisionNumber (
  166.         long * pSeriesAxisDivisionNumber ) = 0;
  167.     virtual HRESULT __stdcall put_SeriesAxisDivisionNumber (
  168.         long pSeriesAxisDivisionNumber ) = 0;
  169.     virtual HRESULT __stdcall get_GraphColor (
  170.         enum CRGraphColor * pGraphColor ) = 0;
  171.     virtual HRESULT __stdcall put_GraphColor (
  172.         enum CRGraphColor pGraphColor ) = 0;
  173.     virtual HRESULT __stdcall get_DataValueNumberFormat (
  174.         enum CRNumberFormat * pDataValueNumberFormat ) = 0;
  175.     virtual HRESULT __stdcall put_DataValueNumberFormat (
  176.         enum CRNumberFormat pDataValueNumberFormat ) = 0;
  177.     virtual HRESULT __stdcall get_ViewingAngle (
  178.         enum CRViewingAngle * pViewingAngle ) = 0;
  179.     virtual HRESULT __stdcall put_ViewingAngle (
  180.         enum CRViewingAngle pViewingAngle ) = 0;
  181.     virtual HRESULT __stdcall get_ZAxisTitle (
  182.         BSTR * ppZAxisTitle ) = 0;
  183.     virtual HRESULT __stdcall put_ZAxisTitle (
  184.         BSTR ppZAxisTitle ) = 0;
  185.     virtual HRESULT __stdcall get_ConditionFields (
  186.         struct IFieldDefinitions * * ppConditionFields ) = 0;
  187.     virtual HRESULT __stdcall get_SummaryFields (
  188.         struct IObjectSummaryFieldDefinitions * * ppSummaryFields ) = 0;
  189.     virtual HRESULT __stdcall get_EnableForEachRecord (
  190.         VARIANT_BOOL * pBool ) = 0;
  191.     virtual HRESULT __stdcall put_EnableForEachRecord (
  192.         VARIANT_BOOL pBool ) = 0;
  193.     virtual HRESULT __stdcall get_EnableSummarizeValues (
  194.         VARIANT_BOOL * pBool ) = 0;
  195.     virtual HRESULT __stdcall put_EnableSummarizeValues (
  196.         VARIANT_BOOL pBool ) = 0;
  197.     virtual HRESULT __stdcall get_CrossTabObject (
  198.         struct ICrossTabObject * * ppCrossTabObject ) = 0;
  199.     virtual HRESULT __stdcall get_TitleFont (
  200.         IFontDisp * * ppFont ) = 0;
  201.     virtual HRESULT __stdcall putref_TitleFont (
  202.         IFontDisp * ppFont ) = 0;
  203.     virtual HRESULT __stdcall get_SubTitleFont (
  204.         IFontDisp * * ppFont ) = 0;
  205.     virtual HRESULT __stdcall putref_SubTitleFont (
  206.         IFontDisp * ppFont ) = 0;
  207.     virtual HRESULT __stdcall get_FootnoteFont (
  208.         IFontDisp * * ppFont ) = 0;
  209.     virtual HRESULT __stdcall putref_FootnoteFont (
  210.         IFontDisp * ppFont ) = 0;
  211.     virtual HRESULT __stdcall get_GroupTitleFont (
  212.         IFontDisp * * ppFont ) = 0;
  213.     virtual HRESULT __stdcall putref_GroupTitleFont (
  214.         IFontDisp * ppFont ) = 0;
  215.     virtual HRESULT __stdcall get_DataTitleFont (
  216.         IFontDisp * * ppFont ) = 0;
  217.     virtual HRESULT __stdcall putref_DataTitleFont (
  218.         IFontDisp * ppFont ) = 0;
  219.     virtual HRESULT __stdcall get_SeriesTitleFont (
  220.         IFontDisp * * ppFont ) = 0;
  221.     virtual HRESULT __stdcall putref_SeriesTitleFont (
  222.         IFontDisp * ppFont ) = 0;
  223.     virtual HRESULT __stdcall get_LegendFont (
  224.         IFontDisp * * ppFont ) = 0;
  225.     virtual HRESULT __stdcall putref_LegendFont (
  226.         IFontDisp * ppFont ) = 0;
  227.     virtual HRESULT __stdcall get_GroupLabelFont (
  228.         IFontDisp * * ppFont ) = 0;
  229.     virtual HRESULT __stdcall putref_GroupLabelFont (
  230.         IFontDisp * ppFont ) = 0;
  231.     virtual HRESULT __stdcall get_DataLabelFont (
  232.         IFontDisp * * ppFont ) = 0;
  233.     virtual HRESULT __stdcall putref_DataLabelFont (
  234.         IFontDisp * ppFont ) = 0;
  235.     virtual HRESULT __stdcall get_SeriesLabelFont (
  236.         IFontDisp * * ppFont ) = 0;
  237.     virtual HRESULT __stdcall putref_SeriesLabelFont (
  238.         IFontDisp * ppFont ) = 0;
  239.     virtual HRESULT __stdcall get_IsTitleByDefault (
  240.         VARIANT_BOOL * pBool ) = 0;
  241.     virtual HRESULT __stdcall put_IsTitleByDefault (
  242.         VARIANT_BOOL pBool ) = 0;
  243.     virtual HRESULT __stdcall get_IsSubTitleByDefault (
  244.         VARIANT_BOOL * pBool ) = 0;
  245.     virtual HRESULT __stdcall put_IsSubTitleByDefault (
  246.         VARIANT_BOOL pBool ) = 0;
  247.     virtual HRESULT __stdcall get_IsFootnoteByDefault (
  248.         VARIANT_BOOL * pBool ) = 0;
  249.     virtual HRESULT __stdcall put_IsFootnoteByDefault (
  250.         VARIANT_BOOL pBool ) = 0;
  251.     virtual HRESULT __stdcall get_IsXAxisTitleByDefault (
  252.         VARIANT_BOOL * pBool ) = 0;
  253.     virtual HRESULT __stdcall put_IsXAxisTitleByDefault (
  254.         VARIANT_BOOL pBool ) = 0;
  255.     virtual HRESULT __stdcall get_IsYAxisTitleByDefault (
  256.         VARIANT_BOOL * pBool ) = 0;
  257.     virtual HRESULT __stdcall put_IsYAxisTitleByDefault (
  258.         VARIANT_BOOL pBool ) = 0;
  259.     virtual HRESULT __stdcall get_IsZAxisTitleByDefault (
  260.         VARIANT_BOOL * pBool ) = 0;
  261.     virtual HRESULT __stdcall put_IsZAxisTitleByDefault (
  262.         VARIANT_BOOL pBool ) = 0;
  263.     virtual HRESULT __stdcall get_EnableAutoScaleDataAxis (
  264.         VARIANT_BOOL * pBool ) = 0;
  265.     virtual HRESULT __stdcall put_EnableAutoScaleDataAxis (
  266.         VARIANT_BOOL pBool ) = 0;
  267.     virtual HRESULT __stdcall get_EnableAutoScaleData2Axis (
  268.         VARIANT_BOOL * pBool ) = 0;
  269.     virtual HRESULT __stdcall put_EnableAutoScaleData2Axis (
  270.         VARIANT_BOOL pBool ) = 0;
  271.     virtual HRESULT __stdcall get_EnableAutoScaleSeriesAxis (
  272.         VARIANT_BOOL * pBool ) = 0;
  273.     virtual HRESULT __stdcall put_EnableAutoScaleSeriesAxis (
  274.         VARIANT_BOOL pBool ) = 0;
  275.     virtual HRESULT __stdcall get_LegendLayout (
  276.         enum CRPieLegendLayout * pLegendLayout ) = 0;
  277.     virtual HRESULT __stdcall put_LegendLayout (
  278.         enum CRPieLegendLayout pLegendLayout ) = 0;
  279.     virtual HRESULT __stdcall get_ConditionFieldSortOrder (
  280.         int index,
  281.         enum CRSortDirection * pSortOrder ) = 0;
  282.     virtual HRESULT __stdcall put_ConditionFieldSortOrder (
  283.         int index,
  284.         enum CRSortDirection pSortOrder ) = 0;
  285.     virtual HRESULT __stdcall get_SpecifiedGroups (
  286.         int index,
  287.         VARIANT * pSpecifedGroupArray ) = 0;
  288.     virtual HRESULT __stdcall put_SpecifiedGroups (
  289.         int index,
  290.         VARIANT pSpecifedGroupArray ) = 0;
  291.     virtual HRESULT __stdcall get_DataTitle (
  292.         BSTR * ppDataTitle ) = 0;
  293.     virtual HRESULT __stdcall put_DataTitle (
  294.         BSTR ppDataTitle ) = 0;
  295.     virtual HRESULT __stdcall get_Data2Title (
  296.         BSTR * ppData2Title ) = 0;
  297.     virtual HRESULT __stdcall put_Data2Title (
  298.         BSTR ppData2Title ) = 0;
  299.     virtual HRESULT __stdcall get_IsGroupsTitleByDefault (
  300.         VARIANT_BOOL * pBool ) = 0;
  301.     virtual HRESULT __stdcall put_IsGroupsTitleByDefault (
  302.         VARIANT_BOOL pBool ) = 0;
  303.     virtual HRESULT __stdcall get_IsSeriesTitleByDefault (
  304.         VARIANT_BOOL * pBool ) = 0;
  305.     virtual HRESULT __stdcall put_IsSeriesTitleByDefault (
  306.         VARIANT_BOOL pBool ) = 0;
  307.     virtual HRESULT __stdcall get_IsDataTitleByDefault (
  308.         VARIANT_BOOL * pBool ) = 0;
  309.     virtual HRESULT __stdcall put_IsDataTitleByDefault (
  310.         VARIANT_BOOL pBool ) = 0;
  311.     virtual HRESULT __stdcall get_IsData2TitleByDefault (
  312.         VARIANT_BOOL * pBool ) = 0;
  313.     virtual HRESULT __stdcall put_IsData2TitleByDefault (
  314.         VARIANT_BOOL pBool ) = 0;
  315.     virtual HRESULT __stdcall get_Data2TitleFont (
  316.         IFontDisp * * ppFont ) = 0;
  317.     virtual HRESULT __stdcall putref_Data2TitleFont (
  318.         IFontDisp * ppFont ) = 0;
  319.     virtual HRESULT __stdcall get_Data2LabelFont (
  320.         IFontDisp * * ppFont ) = 0;
  321.     virtual HRESULT __stdcall putref_Data2LabelFont (
  322.         IFontDisp * ppFont ) = 0;
  323. };
  324. enum CRGraphType
  325. {
  326.     crSideBySideBarGraph = 0,
  327.     crStackedBarGraph = 1,
  328.     crPercentBarGraph = 2,
  329.     crFaked3DSideBySideBarGraph = 3,
  330.     crFaked3DStackedBarGraph = 4,
  331.     crFaked3DPercentBarGraph = 5,
  332.     crRegularLineGraph = 10,
  333.     crStackedLineGraph = 11,
  334.     crPercentageLineGraph = 12,
  335.     crLineGraphWithMarkers = 13,
  336.     crStackedLineGraphWithMarkers = 14,
  337.     crPercentageLineGraphWithMarkers = 15,
  338.     crStackedAreaGraph = 21,
  339.     crPercentAreaGraph = 22,
  340.     crFaked3DStackedAreaGraph = 24,
  341.     crFaked3DPercentAreaGraph = 25,
  342.     crRegularPieGraph = 30,
  343.     crFaked3DRegularPieGraph = 31,
  344.     crMultiplePieGraph = 32,
  345.     crMultipleProportionalPieGraph = 33,
  346.     crRegularDoughnutGraph = 40,
  347.     crMultipleDoughnutGraph = 41,
  348.     crMultipleProportionalDoughnutGraph = 42,
  349.     crThreeDRegularGraph = 50,
  350.     crThreeDPyramidGraph = 51,
  351.     crThreeDOctagonGraph = 52,
  352.     crThreeDCutCornersGraph = 53,
  353.     crThreeDSurfaceRegularGraph = 60,
  354.     crThreeDSurfaceWithSidesGraph = 61,
  355.     crThreeDSurfaceHoneycombGraph = 62,
  356.     crXyScatterGraph = 70,
  357.     crRegularRadarGraph = 80,
  358.     crStackedRadarGraph = 81,
  359.     crRegularBubbleGraph = 90,
  360.     crHighLowGraph = 100,
  361.     crHighLowOpenCloseGraph = 104
  362. };
  363. enum CRGraphDataPoint
  364. {
  365.     crNone = 0,
  366.     crShowLabel = 1,
  367.     crShowValue = 2
  368. };
  369. enum CRGridlineType
  370. {
  371.     crNoGridlines = 0,
  372.     crMinorGridlines = 1,
  373.     crMajorGridlines = 2,
  374.     crMajorAndMinorGridlines = 3
  375. };
  376. enum CRLegendPosition
  377. {
  378.     crPlaceRight = 4,
  379.     crPlaceLeft = 5,
  380.     crPlaceBottom = 6,
  381.     crPlaceCustom = 7
  382. };
  383. enum CRGraphDirection
  384. {
  385.     crHorizontalGraph = 0,
  386.     crVerticalGraph = 1
  387. };
  388. enum CRPieSize
  389. {
  390.     crMinimumPieSize = 64,
  391.     crSmallPieSize = 48,
  392.     crAveragePieSize = 32,
  393.     crLargePieSize = 16,
  394.     crMaximumPieSize = 0
  395. };
  396. enum CRSliceDetachment
  397. {
  398.     crNoDetachment = 0,
  399.     crSmallestSlice = 1,
  400.     crLargestSlice = 2
  401. };
  402. enum CRBarSize
  403. {
  404.     crMinimumBarSize = 0,
  405.     crSmallBarSize = 1,
  406.     crAverageBarSize = 2,
  407.     crLargeBarSize = 3,
  408.     crMaximumBarSize = 4
  409. };
  410. enum CRMarkerSize
  411. {
  412.     crSmallMarkers = 0,
  413.     crMediumSmallMarkers = 1,
  414.     crMediumMarkers = 2,
  415.     crMediumLargeMarkers = 3,
  416.     crLargeMarkers = 4
  417. };
  418. enum CRMarkerShape
  419. {
  420.     crRectangleShape = 1,
  421.     crCircleShape = 4,
  422.     crDiamondShape = 5,
  423.     crTriangleShape = 8
  424. };
  425. enum CRNumberFormat
  426. {
  427.     crNoDecimal = 0,
  428.     crOneDecimal = 1,
  429.     crTwoDecimal = 2,
  430.     crCurrencyNoDecimal = 3,
  431.     crCurrencyTwoDecimal = 4,
  432.     crPercentNoDecimal = 5,
  433.     crPercentOneDecimal = 6,
  434.     crPercentTwoDecimal = 7,
  435.     crCustomNumberFormat = 8,
  436.     crThousandsNoDecimal = 9,
  437.     crMillionsNoDecimal = 10,
  438.     crCurrencyThousands = 11,
  439.     crCurrencyMillions = 12
  440. };
  441. enum CRDivisionMethod
  442. {
  443.     crAutomaticDivision = 0,
  444.     crManualDivision = 1
  445. };
  446. enum CRGraphColor
  447. {
  448.     crColorGraph = 0,
  449.     crBlackAndWhiteGraph = 1
  450. };
  451. enum CRViewingAngle
  452. {
  453.     crStandardView = 1,
  454.     crTallView = 2,
  455.     crTopView = 3,
  456.     crDistortedView = 4,
  457.     crShortView = 5,
  458.     crGroupEyeView = 6,
  459.     crGroupEmphasisView = 7,
  460.     crFewSeriesView = 8,
  461.     crFewGroupsView = 9,
  462.     crDistortedStdView = 10,
  463.     crThickGroupsView = 11,
  464.     crShorterView = 12,
  465.     crThickSeriesView = 13,
  466.     crThickStdView = 14,
  467.     crBirdsEyeView = 15,
  468.     crMaxView = 16
  469. };
  470. struct __declspec(uuid("0bac5e02-44c9-11d1-abec-00a0c9274b91"))
  471. IFieldDefinitions : IDispatch
  472. {
  473.     //
  474.     // Property data
  475.     //
  476.     __declspec(property(get=GetItem))
  477.     IFieldDefinitionPtr Item[];
  478.     __declspec(property(get=GetCount))
  479.     long Count;
  480.     __declspec(property(get=GetParent))
  481.     IReportObjectPtr Parent;
  482.     __declspec(property(get=Get_NewEnum))
  483.     IUnknownPtr _NewEnum;
  484.     //
  485.     // Wrapper methods for error-handling
  486.     //
  487.     IUnknownPtr Get_NewEnum ( );
  488.     IFieldDefinitionPtr GetItem (
  489.         long index );
  490.     long GetCount ( );
  491.     IReportObjectPtr GetParent ( );
  492.     HRESULT Add (
  493.         const _variant_t & Field );
  494.     HRESULT Delete (
  495.         const _variant_t & Field );
  496.     //
  497.     // Raw methods provided by interface
  498.     //
  499.     virtual HRESULT __stdcall get__NewEnum (
  500.         IUnknown * * ppNewEnum ) = 0;
  501.     virtual HRESULT __stdcall get_Item (
  502.         long index,
  503.         struct IFieldDefinition * * ppFieldDefinition ) = 0;
  504.     virtual HRESULT __stdcall get_Count (
  505.         long * pCount ) = 0;
  506.     virtual HRESULT __stdcall get_Parent (
  507.         struct IReportObject * * ppReportObject ) = 0;
  508.     virtual HRESULT __stdcall raw_Add (
  509.         VARIANT Field ) = 0;
  510.     virtual HRESULT __stdcall raw_Delete (
  511.         VARIANT Field ) = 0;
  512. };
  513. enum CRPieLegendLayout
  514. {
  515.     crPercentLayout = 0,
  516.     crAmountLayout = 1,
  517.     crBothLayout = 2,
  518.     crNoneLayout = 3
  519. };
  520. enum CRTopBottomNGroupSortOrder
  521. {
  522.     crAllGroupsUnsorted = 0,
  523.     crAllGroupsSorted = 1,
  524.     crTopNGroups = 2,
  525.     crBottomNGroups = 3
  526. };
  527. enum CRConvertDateTimeType
  528. {
  529.     crConvertDateTimeToString = 0,
  530.     crConvertDateTimeToDate = 1,
  531.     crKeepDateTimeType = 2
  532. };
  533. struct __declspec(uuid("0bac5a32-44c9-11d1-abec-00a0c9274b91"))
  534. IDatabase : IDispatch
  535. {
  536.     //
  537.     // Property data
  538.     //
  539.     __declspec(property(get=GetTables))
  540.     IDatabaseTablesPtr Tables;
  541.     __declspec(property(get=GetParent))
  542.     IReportPtr Parent;
  543.     __declspec(property(get=GetLinks))
  544.     ITableLinksPtr Links;
  545.     __declspec(property(get=GetDictionaryLocation,put=PutDictionaryLocation))
  546.     _bstr_t DictionaryLocation;
  547.     //
  548.     // Wrapper methods for error-handling
  549.     //
  550.     IDatabaseTablesPtr GetTables ( );
  551.     IReportPtr GetParent ( );
  552.     HRESULT LogOnServer (
  553.         _bstr_t pDllName,
  554.         _bstr_t pServerName,
  555.         const _variant_t & pDatabaseName = vtMissing,
  556.         const _variant_t & pUserID = vtMissing,
  557.         const _variant_t & pPassword = vtMissing );
  558.     HRESULT LogOffServer (
  559.         _bstr_t pDllName,
  560.         _bstr_t pServerName,
  561.         const _variant_t & pDatabaseName = vtMissing,
  562.         const _variant_t & pUserID = vtMissing,
  563.         const _variant_t & pPassword = vtMissing );
  564.     HRESULT SetDataSource (
  565.         const _variant_t & data,
  566.         const _variant_t & dataTag = vtMissing,
  567.         const _variant_t & tableNumber = vtMissing );
  568.     HRESULT Verify ( );
  569.     ITableLinksPtr GetLinks ( );
  570.     HRESULT AddOLEDBSource (
  571.         _bstr_t pConnectionString,
  572.         _bstr_t pTableName );
  573.     HRESULT AddADOCommand (
  574.         const _variant_t & pConnection,
  575.         const _variant_t & pCommand );
  576.     HRESULT LogOnServerEx (
  577.         _bstr_t pDllName,
  578.         _bstr_t pServerName,
  579.         const _variant_t & pDatabaseName = vtMissing,
  580.         const _variant_t & pUserID = vtMissing,
  581.         const _variant_t & pPassword = vtMissing,
  582.         const _variant_t & pServerType = vtMissing,
  583.         const _variant_t & pConnectionString = vtMissing );
  584.     _bstr_t GetDictionaryLocation ( );
  585.     void PutDictionaryLocation (
  586.         _bstr_t ppLocation );
  587.     HRESULT LogOnServerWithPrivateInfo (
  588.         _bstr_t pDllName,
  589.         const _variant_t & privateInfo );
  590.     HRESULT ConvertDatabaseDriver (
  591.         _bstr_t pDllName,
  592.         VARIANT_BOOL blDoImmediateConvert );
  593.     //
  594.     // Raw methods provided by interface
  595.     //
  596.     virtual HRESULT __stdcall get_Tables (
  597.         struct IDatabaseTables * * ppTables ) = 0;
  598.     virtual HRESULT __stdcall get_Parent (
  599.         struct IReport * * ppParent ) = 0;
  600.     virtual HRESULT __stdcall raw_LogOnServer (
  601.         BSTR pDllName,
  602.         BSTR pServerName,
  603.         VARIANT pDatabaseName = vtMissing,
  604.         VARIANT pUserID = vtMissing,
  605.         VARIANT pPassword = vtMissing ) = 0;
  606.     virtual HRESULT __stdcall raw_LogOffServer (
  607.         BSTR pDllName,
  608.         BSTR pServerName,
  609.         VARIANT pDatabaseName = vtMissing,
  610.         VARIANT pUserID = vtMissing,
  611.         VARIANT pPassword = vtMissing ) = 0;
  612.     virtual HRESULT __stdcall raw_SetDataSource (
  613.         VARIANT data,
  614.         VARIANT dataTag = vtMissing,
  615.         VARIANT tableNumber = vtMissing ) = 0;
  616.     virtual HRESULT __stdcall raw_Verify ( ) = 0;
  617.     virtual HRESULT __stdcall get_Links (
  618.         struct ITableLinks * * ppLinks ) = 0;
  619.     virtual HRESULT __stdcall raw_AddOLEDBSource (
  620.         BSTR pConnectionString,
  621.         BSTR pTableName ) = 0;
  622.     virtual HRESULT __stdcall raw_AddADOCommand (
  623.         VARIANT pConnection,
  624.         VARIANT pCommand ) = 0;
  625.     virtual HRESULT __stdcall raw_LogOnServerEx (
  626.         BSTR pDllName,
  627.         BSTR pServerName,
  628.         VARIANT pDatabaseName = vtMissing,
  629.         VARIANT pUserID = vtMissing,
  630.         VARIANT pPassword = vtMissing,
  631.         VARIANT pServerType = vtMissing,
  632.         VARIANT pConnectionString = vtMissing ) = 0;
  633.     virtual HRESULT __stdcall get_DictionaryLocation (
  634.         BSTR * ppLocation ) = 0;
  635.     virtual HRESULT __stdcall put_DictionaryLocation (
  636.         BSTR ppLocation ) = 0;
  637.     virtual HRESULT __stdcall raw_LogOnServerWithPrivateInfo (
  638.         BSTR pDllName,
  639.         VARIANT privateInfo ) = 0;
  640.     virtual HRESULT __stdcall raw_ConvertDatabaseDriver (
  641.         BSTR pDllName,
  642.         VARIANT_BOOL blDoImmediateConvert ) = 0;
  643. };
  644. struct __declspec(uuid("0bac5a42-44c9-11d1-abec-00a0c9274b91"))
  645. IDatabaseTables : IDispatch
  646. {
  647.     //
  648.     // Property data
  649.     //
  650.     __declspec(property(get=GetItem))
  651.     IDatabaseTablePtr Item[];
  652.     __declspec(property(get=GetCount))
  653.     long Count;
  654.     __declspec(property(get=GetParent))
  655.     IDatabasePtr Parent;
  656.     __declspec(property(get=Get_NewEnum))
  657.     IUnknownPtr _NewEnum;
  658.     //
  659.     // Wrapper methods for error-handling
  660.     //
  661.     IUnknownPtr Get_NewEnum ( );
  662.     IDatabaseTablePtr GetItem (
  663.         long index );
  664.     long GetCount ( );
  665.     IDatabasePtr GetParent ( );
  666.     HRESULT Add (
  667.         _bstr_t pLocation,
  668.         const _variant_t & pSubLocation = vtMissing,
  669.         const _variant_t & pConnectInfo = vtMissing,
  670.         const _variant_t & tableType = vtMissing,
  671.         const _variant_t & pDllName = vtMissing,
  672.         const _variant_t & pServerName = vtMissing,
  673.         const _variant_t & pServerType = vtMissing,
  674.         const _variant_t & pDatabaseName = vtMissing,
  675.         const _variant_t & pUserID = vtMissing,
  676.         const _variant_t & pPassword = vtMissing );
  677.     HRESULT Delete (
  678.         long index );
  679.     HRESULT AddStoredProcedure (
  680.         _bstr_t pLocation,
  681.         const _variant_t & pSubLocation = vtMissing,
  682.         const _variant_t & pConnectInfo = vtMissing,
  683.         const _variant_t & tableType = vtMissing,
  684.         const _variant_t & pDllName = vtMissing,
  685.         const _variant_t & pServerName = vtMissing,
  686.         const _variant_t & pServerType = vtMissing,
  687.         const _variant_t & pDatabaseName = vtMissing,
  688.         const _variant_t & pUserID = vtMissing,
  689.         const _variant_t & pPassword = vtMissing,
  690.         const _variant_t & paramValueInfos = vtMissing );
  691.     //
  692.     // Raw methods provided by interface
  693.     //
  694.     virtual HRESULT __stdcall get__NewEnum (
  695.         IUnknown * * ppNewEnum ) = 0;
  696.     virtual HRESULT __stdcall get_Item (
  697.         long index,
  698.         struct IDatabaseTable * * ppDatabaseTable ) = 0;
  699.     virtual HRESULT __stdcall get_Count (
  700.         long * pCount ) = 0;
  701.     virtual HRESULT __stdcall get_Parent (
  702.         struct IDatabase * * ppParent ) = 0;
  703.     virtual HRESULT __stdcall raw_Add (
  704.         BSTR pLocation,
  705.         VARIANT pSubLocation = vtMissing,
  706.         VARIANT pConnectInfo = vtMissing,
  707.         VARIANT tableType = vtMissing,
  708.         VARIANT pDllName = vtMissing,
  709.         VARIANT pServerName = vtMissing,
  710.         VARIANT pServerType = vtMissing,
  711.         VARIANT pDatabaseName = vtMissing,
  712.         VARIANT pUserID = vtMissing,
  713.         VARIANT pPassword = vtMissing ) = 0;
  714.     virtual HRESULT __stdcall raw_Delete (
  715.         long index ) = 0;
  716.     virtual HRESULT __stdcall raw_AddStoredProcedure (
  717.         BSTR pLocation,
  718.         VARIANT pSubLocation = vtMissing,
  719.         VARIANT pConnectInfo = vtMissing,
  720.         VARIANT tableType = vtMissing,
  721.         VARIANT pDllName = vtMissing,
  722.         VARIANT pServerName = vtMissing,
  723.         VARIANT pServerType = vtMissing,
  724.         VARIANT pDatabaseName = vtMissing,
  725.         VARIANT pUserID = vtMissing,
  726.         VARIANT pPassword = vtMissing,
  727.         VARIANT paramValueInfos = vtMissing ) = 0;
  728. };
  729. struct __declspec(uuid("0bac5a52-44c9-11d1-abec-00a0c9274b91"))
  730. IDatabaseTable : IDispatch
  731. {
  732.     //
  733.     // Property data
  734.     //
  735.     __declspec(property(get=GetName,put=PutName))
  736.     _bstr_t Name;
  737.     __declspec(property(get=GetParent))
  738.     IDatabasePtr Parent;
  739.     __declspec(property(get=GetLocation,put=PutLocation))
  740.     _bstr_t Location;
  741.     __declspec(property(get=GetFields))
  742.     IDatabaseFieldDefinitionsPtr Fields;
  743.     __declspec(property(get=GetSubLocation))
  744.     _bstr_t SubLocation;
  745.     __declspec(property(get=GetConnectBufferString))
  746.     _bstr_t ConnectBufferString;
  747.     __declspec(property(get=GetDllName))
  748.     _bstr_t DllName;
  749.     __declspec(property(get=GetDecriptiveName))
  750.     _bstr_t DecriptiveName;
  751.     __declspec(property(get=GetLogOnServerName))
  752.     _bstr_t LogOnServerName;
  753.     __declspec(property(get=GetLogOnDatabaseName))
  754.     _bstr_t LogOnDatabaseName;
  755.     __declspec(property(get=GetLogOnUserID))
  756.     _bstr_t LogOnUserID;
  757.     __declspec(property(get=GetSessionUserID))
  758.     _bstr_t SessionUserID;
  759.     __declspec(property(get=GetDatabaseType))
  760.     enum CRDatabaseType DatabaseType;
  761.     //
  762.     // Wrapper methods for error-handling
  763.     //
  764.     _bstr_t GetName ( );
  765.     void PutName (
  766.         _bstr_t ppName );
  767.     _bstr_t GetLocation ( );
  768.     void PutLocation (
  769.         _bstr_t ppLocation );
  770.     IDatabaseFieldDefinitionsPtr GetFields ( );
  771.     HRESULT SetPrivateData (
  772.         long dataTag,
  773.         const _variant_t & data );
  774.     IDatabasePtr GetParent ( );
  775.     HRESULT SetDataSource (
  776.         const _variant_t & data,
  777.         const _variant_t & dataTag = vtMissing );
  778.     _bstr_t GetDllName ( );
  779.     _bstr_t GetDecriptiveName ( );
  780.     _bstr_t GetLogOnServerName ( );
  781.     _bstr_t GetLogOnDatabaseName ( );
  782.     _bstr_t GetLogOnUserID ( );
  783.     _bstr_t GetSessionUserID ( );
  784.     VARIANT_BOOL TestConnectivity ( );
  785.     HRESULT SetLogOnInfo (
  786.         _bstr_t pServerName,
  787.         const _variant_t & pDatabaseName = vtMissing,
  788.         const _variant_t & pUserID = vtMissing,
  789.         const _variant_t & pPassword = vtMissing );
  790.     HRESULT SetSessionInfo (
  791.         _bstr_t pSessionUserID,
  792.         _bstr_t pSessionPassword );
  793.     enum CRDatabaseType GetDatabaseType ( );
  794.     HRESULT CheckDifferences (
  795.         long * pDifferences,
  796.         VARIANT * reserved );
  797.     _bstr_t GetSubLocation ( );
  798.     HRESULT SetTableLocation (
  799.         _bstr_t pLocation,
  800.         _bstr_t pSubLocation,
  801.         _bstr_t pConnectBufferSting );
  802.     _bstr_t GetConnectBufferString ( );
  803.     //
  804.     // Raw methods provided by interface
  805.     //
  806.     virtual HRESULT __stdcall get_Name (
  807.         BSTR * ppName ) = 0;
  808.     virtual HRESULT __stdcall put_Name (
  809.         BSTR ppName ) = 0;
  810.     virtual HRESULT __stdcall get_Location (
  811.         BSTR * ppLocation ) = 0;
  812.     virtual HRESULT __stdcall put_Location (
  813.         BSTR ppLocation ) = 0;
  814.     virtual HRESULT __stdcall get_Fields (
  815.         struct IDatabaseFieldDefinitions * * ppFieldDefinitions ) = 0;
  816.     virtual HRESULT __stdcall raw_SetPrivateData (
  817.         long dataTag,
  818.         VARIANT data ) = 0;
  819.     virtual HRESULT __stdcall get_Parent (
  820.         struct IDatabase * * ppParent ) = 0;
  821.     virtual HRESULT __stdcall raw_SetDataSource (
  822.         VARIANT data,
  823.         VARIANT dataTag = vtMissing ) = 0;
  824.     virtual HRESULT __stdcall get_DllName (
  825.         BSTR * ppDllName ) = 0;
  826.     virtual HRESULT __stdcall get_DecriptiveName (
  827.         BSTR * ppDescriptiveName ) = 0;
  828.     virtual HRESULT __stdcall get_LogOnServerName (
  829.         BSTR * ppLogOnServerName ) = 0;
  830.     virtual HRESULT __stdcall get_LogOnDatabaseName (
  831.         BSTR * ppLogOnDatabaseName ) = 0;
  832.     virtual HRESULT __stdcall get_LogOnUserID (
  833.         BSTR * ppLogOnUserID ) = 0;
  834.     virtual HRESULT __stdcall get_SessionUserID (
  835.         BSTR * ppSessionUserID ) = 0;
  836.     virtual HRESULT __stdcall raw_TestConnectivity (
  837.         VARIANT_BOOL * pBool ) = 0;
  838.     virtual HRESULT __stdcall raw_SetLogOnInfo (
  839.         BSTR pServerName,
  840.         VARIANT pDatabaseName = vtMissing,
  841.         VARIANT pUserID = vtMissing,
  842.         VARIANT pPassword = vtMissing ) = 0;
  843.     virtual HRESULT __stdcall raw_SetSessionInfo (
  844.         BSTR pSessionUserID,
  845.         BSTR pSessionPassword ) = 0;
  846.     virtual HRESULT __stdcall get_DatabaseType (
  847.         enum CRDatabaseType * pDatabaseType ) = 0;
  848.     virtual HRESULT __stdcall raw_CheckDifferences (
  849.         long * pDifferences,
  850.         VARIANT * reserved ) = 0;
  851.     virtual HRESULT __stdcall get_SubLocation (
  852.         BSTR * ppSubLocation ) = 0;
  853.     virtual HRESULT __stdcall raw_SetTableLocation (
  854.         BSTR pLocation,
  855.         BSTR pSubLocation,
  856.         BSTR pConnectBufferSting ) = 0;
  857.     virtual HRESULT __stdcall get_ConnectBufferString (
  858.         BSTR * ppConnectBufferString ) = 0;
  859. };
  860. struct __declspec(uuid("0bac5a62-44c9-11d1-abec-00a0c9274b91"))
  861. IDatabaseFieldDefinitions : IDispatch
  862. {
  863.     //
  864.     // Property data
  865.     //
  866.     __declspec(property(get=GetItem))
  867.     IDatabaseFieldDefinitionPtr Item[];
  868.     __declspec(property(get=GetCount))
  869.     long Count;
  870.     __declspec(property(get=GetParent))
  871.     IDatabaseTablePtr Parent;
  872.     __declspec(property(get=Get_NewEnum))
  873.     IUnknownPtr _NewEnum;
  874.     //
  875.     // Wrapper methods for error-handling
  876.     //
  877.     IUnknownPtr Get_NewEnum ( );
  878.     IDatabaseFieldDefinitionPtr GetItem (
  879.         long index );
  880.     long GetCount ( );
  881.     IDatabaseTablePtr GetParent ( );
  882.     IDatabaseFieldDefinitionPtr GetItemByName (
  883.         _bstr_t Name );
  884.     //
  885.     // Raw methods provided by interface
  886.     //
  887.     virtual HRESULT __stdcall get__NewEnum (
  888.         IUnknown * * ppNewEnum ) = 0;
  889.     virtual HRESULT __stdcall get_Item (
  890.         long index,
  891.         struct IDatabaseFieldDefinition * * ppFieldDefinition ) = 0;
  892.     virtual HRESULT __stdcall get_Count (
  893.         long * pCount ) = 0;
  894.     virtual HRESULT __stdcall get_Parent (
  895.         struct IDatabaseTable * * ppParent ) = 0;
  896.     virtual HRESULT __stdcall raw_GetItemByName (
  897.         BSTR Name,
  898.         struct IDatabaseFieldDefinition * * ppDatabaseFieldDefinition ) = 0;
  899. };
  900. enum CRDatabaseType
  901. {
  902.     crStandardDatabase = 1,
  903.     crSQLDatabase = 2
  904. };
  905. struct __declspec(uuid("0bac5de2-44c9-11d1-abec-00a0c9274b91"))
  906. ITableLinks : IDispatch
  907. {
  908.     //
  909.     // Property data
  910.     //
  911.     __declspec(property(get=GetItem))
  912.     ITableLinkPtr Item[];
  913.     __declspec(property(get=GetCount))
  914.     long Count;
  915.     __declspec(property(get=GetParent))
  916.     IDatabasePtr Parent;
  917.     __declspec(property(get=Get_NewEnum))
  918.     IUnknownPtr _NewEnum;
  919.     //
  920.     // Wrapper methods for error-handling
  921.     //
  922.     IUnknownPtr Get_NewEnum ( );
  923.     long GetCount ( );
  924.     ITableLinkPtr GetItem (
  925.         long index );
  926.     IDatabasePtr GetParent ( );
  927.     ITableLinkPtr Add (
  928.         struct IDatabaseTable * psrcTable,
  929.         struct IDatabaseTable * pDestTable,
  930.         const _variant_t & srcFields,
  931.         const _variant_t & destFields,
  932.         enum CRLinkJoinType JoinType,
  933.         enum CRLinkLookUpType LookupType,
  934.         VARIANT_BOOL PartialMatchEnabled,
  935.         short indexInUse );
  936.     HRESULT Delete (
  937.         long index );
  938.     //
  939.     // Raw methods provided by interface
  940.     //
  941.     virtual HRESULT __stdcall get__NewEnum (
  942.         IUnknown * * ppNewEnum ) = 0;
  943.     virtual HRESULT __stdcall get_Count (
  944.         long * pCount ) = 0;
  945.     virtual HRESULT __stdcall get_Item (
  946.         long index,
  947.         struct ITableLink * * ppDatabaseTable ) = 0;
  948.     virtual HRESULT __stdcall get_Parent (
  949.         struct IDatabase * * ppParent ) = 0;
  950.     virtual HRESULT __stdcall raw_Add (
  951.         struct IDatabaseTable * psrcTable,
  952.         struct IDatabaseTable * pDestTable,
  953.         VARIANT srcFields,
  954.         VARIANT destFields,
  955.         enum CRLinkJoinType JoinType,
  956.         enum CRLinkLookUpType LookupType,
  957.         VARIANT_BOOL PartialMatchEnabled,
  958.         short indexInUse,
  959.         struct ITableLink * * ppTableLink ) = 0;
  960.     virtual HRESULT __stdcall raw_Delete (
  961.         long index ) = 0;
  962. };
  963. struct __declspec(uuid("0bac5df2-44c9-11d1-abec-00a0c9274b91"))
  964. ITableLink : IDispatch
  965. {
  966.     //
  967.     // Property data
  968.     //
  969.     __declspec(property(get=GetParent))
  970.     IDatabasePtr Parent;
  971.     __declspec(property(get=GetSourceTable))
  972.     IDatabaseTablePtr SourceTable;
  973.     __declspec(property(get=GetDestinationTable))
  974.     IDatabaseTablePtr DestinationTable;
  975.     __declspec(property(get=GetJoinType))
  976.     enum CRLinkJoinType JoinType;
  977.     __declspec(property(get=GetLookupType))
  978.     enum CRLinkLookUpType LookupType;
  979.     __declspec(property(get=GetPartialMatchEnabled))
  980.     VARIANT_BOOL PartialMatchEnabled;
  981.     __declspec(property(get=GetIndexUsed))
  982.     short IndexUsed;
  983.     __declspec(property(get=GetSourceFields))
  984.     IDatabaseFieldDefinitionsPtr SourceFields;
  985.     __declspec(property(get=GetDestinationFields))
  986.     IDatabaseFieldDefinitionsPtr DestinationFields;
  987.     //
  988.     // Wrapper methods for error-handling
  989.     //
  990.     IDatabasePtr GetParent ( );
  991.     IDatabaseTablePtr GetSourceTable ( );
  992.     IDatabaseTablePtr GetDestinationTable ( );
  993.     enum CRLinkJoinType GetJoinType ( );
  994.     enum CRLinkLookUpType GetLookupType ( );
  995.     VARIANT_BOOL GetPartialMatchEnabled ( );
  996.     short GetIndexUsed ( );
  997.     IDatabaseFieldDefinitionsPtr GetSourceFields ( );
  998.     IDatabaseFieldDefinitionsPtr GetDestinationFields ( );
  999.     //
  1000.     // Raw methods provided by interface
  1001.     //
  1002.     virtual HRESULT __stdcall get_Parent (
  1003.         struct IDatabase * * ppParent ) = 0;
  1004.     virtual HRESULT __stdcall get_SourceTable (
  1005.         struct IDatabaseTable * * ppSrcTable ) = 0;
  1006.     virtual HRESULT __stdcall get_DestinationTable (
  1007.         struct IDatabaseTable * * ppDestTable ) = 0;
  1008.     virtual HRESULT __stdcall get_JoinType (
  1009.         enum CRLinkJoinType * pJoinType ) = 0;
  1010.     virtual HRESULT __stdcall get_LookupType (
  1011.         enum CRLinkLookUpType * pLookupType ) = 0;
  1012.     virtual HRESULT __stdcall get_PartialMatchEnabled (
  1013.         VARIANT_BOOL * pBool ) = 0;
  1014.     virtual HRESULT __stdcall get_IndexUsed (
  1015.         short * pIndexUsed ) = 0;
  1016.     virtual HRESULT __stdcall get_SourceFields (
  1017.         struct IDatabaseFieldDefinitions * * ppSrcFields ) = 0;
  1018.     virtual HRESULT __stdcall get_DestinationFields (
  1019.         struct IDatabaseFieldDefinitions * * ppDestFields ) = 0;
  1020. };
  1021. enum CRLinkJoinType
  1022. {
  1023.     crJTEqual = 4,
  1024.     crJTLeftOuter = 5,
  1025.     crJTRightOutter = 6,
  1026.     crJROuter = 7,
  1027.     crJTGreaterThan = 8,
  1028.     crJTLessThan = 9,
  1029.     crJTGreaterOrEqual = 10,
  1030.     crJTLessOrEqual = 11,
  1031.     crJTNotEqual = 12
  1032. };
  1033. enum CRLinkLookUpType
  1034. {
  1035.     crLTLookupParallel = 1,
  1036.     crLTLookupProduct = 2,
  1037.     crLTLookupSeries = 3
  1038. };
  1039. enum CRPaperOrientation
  1040. {
  1041.     crDefaultPaperOrientation = 0,
  1042.     crPortrait = 1,
  1043.     crLandscape = 2
  1044. };
  1045. enum CRPaperSize
  1046. {
  1047.     crDefaultPaperSize = 0,
  1048.     crPaperLetter = 1,
  1049.     crPaperLetterSmall = 2,
  1050.     crPaperTabloid = 3,
  1051.     crPaperLedger = 4,
  1052.     crPaperLegal = 5,
  1053.     crPaperStatement = 6,
  1054.     crPaperExecutive = 7,
  1055.     crPaperA3 = 8,
  1056.     crPaperA4 = 9,
  1057.     crPaperA4Small = 10,
  1058.     crPaperA5 = 11,
  1059.     crPaperB4 = 12,
  1060.     crPaperB5 = 13,
  1061.     crPaperFolio = 14,
  1062.     crPaperQuarto = 15,
  1063.     crPaper10x14 = 16,
  1064.     crPaper11x17 = 17,
  1065.     crPaperNote = 18,
  1066.     crPaperEnvelope9 = 19,
  1067.     crPaperEnvelope10 = 20,
  1068.     crPaperEnvelope11 = 21,
  1069.     crPaperEnvelope12 = 22,
  1070.     crPaperEnvelope14 = 23,
  1071.     crPaperCsheet = 24,
  1072.     crPaperDsheet = 25,
  1073.     crPaperEsheet = 26,
  1074.     crPaperEnvelopeDL = 27,
  1075.     crPaperEnvelopeC5 = 28,
  1076.     crPaperEnvelopeC3 = 29,
  1077.     crPaperEnvelopeC4 = 30,
  1078.     crPaperEnvelopeC6 = 31,
  1079.     crPaperEnvelopeC65 = 32,
  1080.     crPaperEnvelopeB4 = 33,
  1081.     crPaperEnvelopeB5 = 34,
  1082.     crPaperEnvelopeB6 = 35,
  1083.     crPaperEnvelopeItaly = 36,
  1084.     crPaperEnvelopeMonarch = 37,
  1085.     crPaperEnvelopePersonal = 38,
  1086.     crPaperFanfoldUS = 39,
  1087.     crPaperFanfoldStdGerman = 40,
  1088.     crPaperFanfoldLegalGerman = 41,
  1089.     crPaperUser = 256
  1090. };
  1091. struct __declspec(uuid("0bac5b82-44c9-11d1-abec-00a0c9274b91"))
  1092. IFormulaFieldDefinitions : IDispatch
  1093. {
  1094.     //
  1095.     // Property data
  1096.     //
  1097.     __declspec(property(get=GetItem))
  1098.     IFormulaFieldDefinitionPtr Item[];
  1099.     __declspec(property(get=GetCount))
  1100.     long Count;
  1101.     __declspec(property(get=GetParent))
  1102.     IReportPtr Parent;
  1103.     __declspec(property(get=Get_NewEnum))
  1104.     IUnknownPtr _NewEnum;
  1105.     //
  1106.     // Wrapper methods for error-handling
  1107.     //
  1108.     IUnknownPtr Get_NewEnum ( );
  1109.     IFormulaFieldDefinitionPtr GetItem (
  1110.         long index );
  1111.     long GetCount ( );
  1112.     IReportPtr GetParent ( );
  1113.     IFormulaFieldDefinitionPtr Add (
  1114.         _bstr_t formulaName,
  1115.         _bstr_t Text );
  1116.     HRESULT Delete (
  1117.         const _variant_t & index );
  1118.     IFormulaFieldDefinitionPtr GetItemByName (
  1119.         _bstr_t Name );
  1120.     //
  1121.     // Raw methods provided by interface
  1122.     //
  1123.     virtual HRESULT __stdcall get__NewEnum (
  1124.         IUnknown * * ppNewEnum ) = 0;
  1125.     virtual HRESULT __stdcall get_Item (
  1126.         long index,
  1127.         struct IFormulaFieldDefinition * * ppFormualFieldDefinition ) = 0;
  1128.     virtual HRESULT __stdcall get_Count (
  1129.         long * pCount ) = 0;
  1130.     virtual HRESULT __stdcall get_Parent (
  1131.         struct IReport * * ppParent ) = 0;
  1132.     virtual HRESULT __stdcall raw_Add (
  1133.         BSTR formulaName,
  1134.         BSTR Text,
  1135.         struct IFormulaFieldDefinition * * ppFormulaField ) = 0;
  1136.     virtual HRESULT __stdcall raw_Delete (
  1137.         VARIANT index ) = 0;
  1138.     virtual HRESULT __stdcall raw_GetItemByName (
  1139.         BSTR Name,
  1140.         struct IFormulaFieldDefinition * * ppFormulaFieldDefinition ) = 0;
  1141. };
  1142. struct __declspec(uuid("0bac5b92-44c9-11d1-abec-00a0c9274b91"))
  1143. IFormulaFieldDefinition : IDispatch
  1144. {
  1145.     //
  1146.     // Property data
  1147.     //
  1148.     __declspec(property(get=GetName))
  1149.     _bstr_t Name;
  1150.     __declspec(property(get=GetValueType))
  1151.     CRFieldValueType ValueType;
  1152.     __declspec(property(get=GetNumberOfBytes))
  1153.     short NumberOfBytes;
  1154.     __declspec(property(get=GetFormulaFieldName))
  1155.     _bstr_t FormulaFieldName;
  1156.     __declspec(property(get=GetKind))
  1157.     enum CRFieldKind Kind;
  1158.     __declspec(property(get=GetParent))
  1159.     IReportPtr Parent;
  1160.     __declspec(property(get=GetPreviousValue))
  1161.     _variant_t PreviousValue;
  1162.     __declspec(property(get=GetNextValue))
  1163.     _variant_t NextValue;
  1164.     __declspec(property(get=GetValue))
  1165.     _variant_t Value;
  1166.     __declspec(property(get=GetText,put=PutText))
  1167.     _bstr_t Text;
  1168.     //
  1169.     // Wrapper methods for error-handling
  1170.     //
  1171.     enum CRFieldKind GetKind ( );
  1172.     CRFieldValueType GetValueType ( );
  1173.     short GetNumberOfBytes ( );
  1174.     _bstr_t GetName ( );
  1175.     _variant_t GetValue ( );
  1176.     _bstr_t GetFormulaFieldName ( );
  1177.     _bstr_t GetText ( );
  1178.     void PutText (
  1179.         _bstr_t ppText );
  1180.     IReportPtr GetParent ( );
  1181.     _variant_t GetPreviousValue ( );
  1182.     _variant_t GetNextValue ( );
  1183.     HRESULT Check (
  1184.         VARIANT_BOOL * pBool,
  1185.         BSTR * ppErrorString );
  1186.     //
  1187.     // Raw methods provided by interface
  1188.     //
  1189.     virtual HRESULT __stdcall get_Kind (
  1190.         enum CRFieldKind * pKind ) = 0;
  1191.     virtual HRESULT __stdcall get_ValueType (
  1192.         CRFieldValueType * pValueType ) = 0;
  1193.     virtual HRESULT __stdcall get_NumberOfBytes (
  1194.         short * pNumberOfBytes ) = 0;
  1195.     virtual HRESULT __stdcall get_Name (
  1196.         BSTR * pName ) = 0;
  1197.     virtual HRESULT __stdcall get_Value (
  1198.         VARIANT * pValue ) = 0;
  1199.     virtual HRESULT __stdcall get_FormulaFieldName (
  1200.         BSTR * ppFormulaFieldName ) = 0;
  1201.     virtual HRESULT __stdcall get_Text (
  1202.         BSTR * ppText ) = 0;
  1203.     virtual HRESULT __stdcall put_Text (
  1204.         BSTR ppText ) = 0;
  1205.     virtual HRESULT __stdcall get_Parent (
  1206.         struct IReport * * ppParent ) = 0;
  1207.     virtual HRESULT __stdcall get_PreviousValue (
  1208.         VARIANT * pPreValue ) = 0;
  1209.     virtual HRESULT __stdcall get_NextValue (
  1210.         VARIANT * pNextValue ) = 0;
  1211.     virtual HRESULT __stdcall raw_Check (
  1212.         VARIANT_BOOL * pBool,
  1213.         BSTR * ppErrorString ) = 0;
  1214. };
  1215. struct __declspec(uuid("0bac5ba2-44c9-11d1-abec-00a0c9274b91"))
  1216. IParameterFieldDefinitions : IDispatch
  1217. {
  1218.     //
  1219.     // Property data
  1220.     //
  1221.     __declspec(property(get=GetItem))
  1222.     IParameterFieldDefinitionPtr Item[];
  1223.     __declspec(property(get=GetCount))
  1224.     long Count;
  1225.     __declspec(property(get=GetParent))
  1226.     IReportPtr Parent;
  1227.     __declspec(property(get=Get_NewEnum))
  1228.     IUnknownPtr _NewEnum;
  1229.     //
  1230.     // Wrapper methods for error-handling
  1231.     //
  1232.     IUnknownPtr Get_NewEnum ( );
  1233.     IParameterFieldDefinitionPtr GetItem (
  1234.         long index );
  1235.     long GetCount ( );
  1236.     IReportPtr GetParent ( );
  1237.     IParameterFieldDefinitionPtr Add (
  1238.         _bstr_t parameterName,
  1239.         CRFieldValueType ValueType );
  1240.     HRESULT Delete (
  1241.         const _variant_t & index );
  1242.     IParameterFieldDefinitionPtr GetItemByName (
  1243.         _bstr_t Name,
  1244.         const _variant_t & SubreportName = vtMissing );
  1245.     //
  1246.     // Raw methods provided by interface
  1247.     //
  1248.     virtual HRESULT __stdcall get__NewEnum (
  1249.         IUnknown * * ppNewEnum ) = 0;
  1250.     virtual HRESULT __stdcall get_Item (
  1251.         long index,
  1252.         struct IParameterFieldDefinition * * ppParameterFieldDefinition ) = 0;
  1253.     virtual HRESULT __stdcall get_Count (
  1254.         long * pCount ) = 0;
  1255.     virtual HRESULT __stdcall get_Parent (
  1256.         struct IReport * * ppParent ) = 0;
  1257.     virtual HRESULT __stdcall raw_Add (
  1258.         BSTR parameterName,
  1259.         CRFieldValueType ValueType,
  1260.         struct IParameterFieldDefinition * * ppParameterField ) = 0;
  1261.     virtual HRESULT __stdcall raw_Delete (
  1262.         VARIANT index ) = 0;
  1263.     virtual HRESULT __stdcall raw_GetItemByName (
  1264.         BSTR Name,
  1265.         VARIANT SubreportName,
  1266.         struct IParameterFieldDefinition * * ppParameterFieldDefinition ) = 0;
  1267. };
  1268. struct __declspec(uuid("0bac5bb2-44c9-11d1-abec-00a0c9274b91"))
  1269. IParameterFieldDefinition : IDispatch
  1270. {
  1271.     //
  1272.     // Property data
  1273.     //
  1274.     __declspec(property(get=GetNeedsCurrentValue))
  1275.     VARIANT_BOOL NeedsCurrentValue;
  1276.     __declspec(property(get=GetValue))
  1277.     _variant_t Value;
  1278.     __declspec(property(get=GetIsCurrentValueSet))
  1279.     VARIANT_BOOL IsCurrentValueSet;
  1280.     __declspec(property(get=GetCurrentValue))
  1281.     _variant_t CurrentValue;
  1282.     __declspec(property(get=GetDefaultValue))
  1283.     _variant_t DefaultValue;
  1284.     __declspec(property(get=GetParameterFieldName))
  1285.     _bstr_t ParameterFieldName;
  1286.     __declspec(property(get=GetEnableNullValue,put=PutEnableNullValue))
  1287.     VARIANT_BOOL EnableNullValue;
  1288.     __declspec(property(get=GetEnableMultipleValues,put=PutEnableMultipleValues))
  1289.     VARIANT_BOOL EnableMultipleValues;
  1290.     __declspec(property(get=GetDiscreteOrRangeKind,put=PutDiscreteOrRangeKind))
  1291.     enum CRDiscreteOrRangeKind DiscreteOrRangeKind;
  1292.     __declspec(property(get=GetPlaceInGroup,put=PutPlaceInGroup))
  1293.     VARIANT_BOOL PlaceInGroup;
  1294.     __declspec(property(get=GetEnableExclusiveGroup,put=PutEnableExclusiveGroup))
  1295.     VARIANT_BOOL EnableExclusiveGroup;
  1296.     __declspec(property(get=GetNumberOfCurrentValues))
  1297.     short NumberOfCurrentValues;
  1298.     __declspec(property(get=GetNumberOfCurrentRanges))
  1299.     short NumberOfCurrentRanges;
  1300.     __declspec(property(get=GetEnableRangeLimit,put=PutEnableRangeLimit))
  1301.     VARIANT_BOOL EnableRangeLimit;
  1302.     __declspec(property(get=GetMinimumValue,put=PutMinimumValue))
  1303.     _variant_t MinimumValue;
  1304.     __declspec(property(get=GetMaximumValue,put=PutMaximumValue))
  1305.     _variant_t MaximumValue;
  1306.     __declspec(property(get=GetEditMask,put=PutEditMask))
  1307.     _bstr_t EditMask;
  1308.     __declspec(property(get=GetParameterType))
  1309.     enum CRParameterFieldType ParameterType;
  1310.     __declspec(property(get=GetDisallowEditing,put=PutDisallowEditing))
  1311.     VARIANT_BOOL DisallowEditing;
  1312.     __declspec(property(get=GetNumberOfDefaultValues))
  1313.     short NumberOfDefaultValues;
  1314.     __declspec(property(get=GetGroupNumber,put=PutGroupNumber))
  1315.     short GroupNumber;
  1316.     __declspec(property(get=GetParent))
  1317.     IReportPtr Parent;
  1318.     __declspec(property(get=GetKind))
  1319.     enum CRFieldKind Kind;
  1320.     __declspec(property(get=GetValueType))
  1321.     CRFieldValueType ValueType;
  1322.     __declspec(property(get=GetNumberOfBytes))
  1323.     short NumberOfBytes;
  1324.     __declspec(property(get=GetNthValueDescription,put=PutNthValueDescription))
  1325.     _bstr_t NthValueDescription[];
  1326.     __declspec(property(get=GetEnableShowDescriptionOnly,put=PutEnableShowDescriptionOnly))
  1327.     VARIANT_BOOL EnableShowDescriptionOnly;
  1328.     __declspec(property(get=GetPicklistSortMethod,put=PutPicklistSortMethod))
  1329.     enum CRParameterPicklistSortMethod PicklistSortMethod;
  1330.     __declspec(property(get=GetEnableSortBasedOnDesc,put=PutEnableSortBasedOnDesc))
  1331.     VARIANT_BOOL EnableSortBasedOnDesc;
  1332.     __declspec(property(get=GetPreviousValue))
  1333.     _variant_t PreviousValue;
  1334.     __declspec(property(get=GetNextValue))
  1335.     _variant_t NextValue;
  1336.     __declspec(property(get=GetName))
  1337.     _bstr_t Name;
  1338.     __declspec(property(get=GetPrompt,put=PutPrompt))
  1339.     _bstr_t Prompt;
  1340.     __declspec(property(get=GetIsDefaultValueSet))
  1341.     VARIANT_BOOL IsDefaultValueSet;
  1342.     __declspec(property(get=GetReportName))
  1343.     _bstr_t ReportName;
  1344.     //
  1345.     // Wrapper methods for error-handling
  1346.     //
  1347.     enum CRFieldKind GetKind ( );
  1348.     CRFieldValueType GetValueType ( );
  1349.     short GetNumberOfBytes ( );
  1350.     _bstr_t GetName ( );
  1351.     _variant_t GetValue ( );
  1352.     _bstr_t GetParameterFieldName ( );
  1353.     IReportPtr GetParent ( );
  1354.     _variant_t GetPreviousValue ( );
  1355.     _variant_t GetNextValue ( );
  1356.     _bstr_t GetPrompt ( );
  1357.     void PutPrompt (
  1358.         _bstr_t ppPrompt );
  1359.     VARIANT_BOOL GetIsDefaultValueSet ( );
  1360.     _bstr_t GetReportName ( );
  1361.     VARIANT_BOOL GetNeedsCurrentValue ( );
  1362.     VARIANT_BOOL GetIsCurrentValueSet ( );
  1363.     _variant_t GetCurrentValue ( );
  1364.     _variant_t GetDefaultValue ( );
  1365.     HRESULT SetCurrentValue (
  1366.         const _variant_t & CurrentValue,
  1367.         const _variant_t & ValueType = vtMissing );
  1368.     HRESULT SetDefaultValue (
  1369.         const _variant_t & DefaultValue,
  1370.         const _variant_t & ValueType = vtMissing );
  1371.     VARIANT_BOOL GetEnableRangeLimit ( );
  1372.     void PutEnableRangeLimit (
  1373.         VARIANT_BOOL pBool );
  1374.     _variant_t GetMinimumValue ( );
  1375.     void PutMinimumValue (
  1376.         const _variant_t & pMinimumValue );
  1377.     _variant_t GetMaximumValue ( );
  1378.     void PutMaximumValue (
  1379.         const _variant_t & pMaximumValue );
  1380.     _bstr_t GetEditMask ( );
  1381.     void PutEditMask (
  1382.         _bstr_t ppEditMask );
  1383.     enum CRParameterFieldType GetParameterType ( );
  1384.     VARIANT_BOOL GetDisallowEditing ( );
  1385.     void PutDisallowEditing (
  1386.         VARIANT_BOOL pBool );
  1387.     short GetNumberOfDefaultValues ( );
  1388.     _variant_t GetNthDefaultValue (
  1389.         short index );
  1390.     HRESULT SetNthDefaultValue (
  1391.         short index,
  1392.         const _variant_t & nthDefaultValue );
  1393.     HRESULT AddDefaultValue (
  1394.         const _variant_t & DefaultValue );
  1395.     HRESULT DeleteNthDefaultValue (
  1396.         short index );
  1397.     VARIANT_BOOL GetEnableNullValue ( );
  1398.     void PutEnableNullValue (
  1399.         VARIANT_BOOL pBool );
  1400.     VARIANT_BOOL GetEnableMultipleValues ( );
  1401.     void PutEnableMultipleValues (
  1402.         VARIANT_BOOL pBool );
  1403.     enum CRDiscreteOrRangeKind GetDiscreteOrRangeKind ( );
  1404.     void PutDiscreteOrRangeKind (
  1405.         enum CRDiscreteOrRangeKind pDiscreteOrRangeKind );
  1406.     VARIANT_BOOL GetPlaceInGroup ( );
  1407.     void PutPlaceInGroup (
  1408.         VARIANT_BOOL pBool );
  1409.     short GetGroupNumber ( );
  1410.     void PutGroupNumber (
  1411.         short pGroupNumber );
  1412.     VARIANT_BOOL GetEnableExclusiveGroup ( );
  1413.     void PutEnableExclusiveGroup (
  1414.         VARIANT_BOOL pBool );
  1415.     short GetNumberOfCurrentValues ( );
  1416.     short GetNumberOfCurrentRanges ( );
  1417.     _variant_t GetNthCurrentValue (
  1418.         short index );
  1419.     HRESULT AddCurrentValue (
  1420.         const _variant_t & CurrentValue );
  1421.     HRESULT GetNthCurrentRange (
  1422.         short index,
  1423.         VARIANT * pStart,
  1424.         VARIANT * pEnd,
  1425.         enum CRRangeInfo * pRangeInfo );
  1426.     HRESULT AddCurrentRange (
  1427.         const _variant_t & start,
  1428.         const _variant_t & end,
  1429.         enum CRRangeInfo rangeInfo );
  1430.     HRESULT ClearCurrentValueAndRange ( );
  1431.     _bstr_t GetNthValueDescription (
  1432.         short index );
  1433.     void PutNthValueDescription (
  1434.         short index,
  1435.         _bstr_t pValueDescription );
  1436.     VARIANT_BOOL GetEnableShowDescriptionOnly ( );
  1437.     void PutEnableShowDescriptionOnly (
  1438.         VARIANT_BOOL pBool );
  1439.     enum CRParameterPicklistSortMethod GetPicklistSortMethod ( );
  1440.     void PutPicklistSortMethod (
  1441.         enum CRParameterPicklistSortMethod pMethod );
  1442.     VARIANT_BOOL GetEnableSortBasedOnDesc ( );
  1443.     void PutEnableSortBasedOnDesc (
  1444.         VARIANT_BOOL pBool );
  1445.     //
  1446.     // Raw methods provided by interface
  1447.     //
  1448.     virtual HRESULT __stdcall get_Kind (
  1449.         enum CRFieldKind * pKind ) = 0;
  1450.     virtual HRESULT __stdcall get_ValueType (
  1451.         CRFieldValueType * pValueType ) = 0;
  1452.     virtual HRESULT __stdcall get_NumberOfBytes (
  1453.         short * pNumberOfBytes ) = 0;
  1454.     virtual HRESULT __stdcall get_Name (
  1455.         BSTR * pName ) = 0;
  1456.     virtual HRESULT __stdcall get_Value (
  1457.         VARIANT * pValue ) = 0;
  1458.     virtual HRESULT __stdcall get_ParameterFieldName (
  1459.         BSTR * ppParameterFieldName ) = 0;
  1460.     virtual HRESULT __stdcall get_Parent (
  1461.         struct IReport * * ppParent ) = 0;
  1462.     virtual HRESULT __stdcall get_PreviousValue (
  1463.         VARIANT * pPreValue ) = 0;
  1464.     virtual HRESULT __stdcall get_NextValue (
  1465.         VARIANT * pNextValue ) = 0;
  1466.     virtual HRESULT __stdcall get_Prompt (
  1467.         BSTR * ppPrompt ) = 0;
  1468.     virtual HRESULT __stdcall put_Prompt (
  1469.         BSTR ppPrompt ) = 0;
  1470.     virtual HRESULT __stdcall get_IsDefaultValueSet (
  1471.         VARIANT_BOOL * pBool ) = 0;
  1472.     virtual HRESULT __stdcall get_ReportName (
  1473.         BSTR * ppReportName ) = 0;
  1474.     virtual HRESULT __stdcall get_NeedsCurrentValue (
  1475.         VARIANT_BOOL * pBool ) = 0;
  1476.     virtual HRESULT __stdcall get_IsCurrentValueSet (
  1477.         VARIANT_BOOL * pBool ) = 0;
  1478.     virtual HRESULT __stdcall get_CurrentValue (
  1479.         VARIANT * pCurrentValue ) = 0;
  1480.     virtual HRESULT __stdcall get_DefaultValue (
  1481.         VARIANT * pDefaultValue ) = 0;
  1482.     virtual HRESULT __stdcall raw_SetCurrentValue (
  1483.         VARIANT CurrentValue,
  1484.         VARIANT ValueType = vtMissing ) = 0;
  1485.     virtual HRESULT __stdcall raw_SetDefaultValue (
  1486.         VARIANT DefaultValue,
  1487.         VARIANT ValueType = vtMissing ) = 0;
  1488.     virtual HRESULT __stdcall get_EnableRangeLimit (
  1489.         VARIANT_BOOL * pBool ) = 0;
  1490.     virtual HRESULT __stdcall put_EnableRangeLimit (
  1491.         VARIANT_BOOL pBool ) = 0;
  1492.     virtual HRESULT __stdcall get_MinimumValue (
  1493.         VARIANT * pMinimumValue ) = 0;
  1494.     virtual HRESULT __stdcall put_MinimumValue (
  1495.         VARIANT pMinimumValue ) = 0;
  1496.     virtual HRESULT __stdcall get_MaximumValue (
  1497.         VARIANT * pMaximumValue ) = 0;
  1498.     virtual HRESULT __stdcall put_MaximumValue (
  1499.         VARIANT pMaximumValue ) = 0;
  1500.     virtual HRESULT __stdcall get_EditMask (
  1501.         BSTR * ppEditMask ) = 0;
  1502.     virtual HRESULT __stdcall put_EditMask (
  1503.         BSTR ppEditMask ) = 0;
  1504.     virtual HRESULT __stdcall get_ParameterType (
  1505.         enum CRParameterFieldType * pParameterType ) = 0;
  1506.     virtual HRESULT __stdcall get_DisallowEditing (
  1507.         VARIANT_BOOL * pBool ) = 0;
  1508.     virtual HRESULT __stdcall put_DisallowEditing (
  1509.         VARIANT_BOOL pBool ) = 0;
  1510.     virtual HRESULT __stdcall get_NumberOfDefaultValues (
  1511.         short * pNumberOfDefaultValues ) = 0;
  1512.     virtual HRESULT __stdcall raw_GetNthDefaultValue (
  1513.         short index,
  1514.         VARIANT * pNthDefaultValue ) = 0;
  1515.     virtual HRESULT __stdcall raw_SetNthDefaultValue (
  1516.         short index,
  1517.         VARIANT nthDefaultValue ) = 0;
  1518.     virtual HRESULT __stdcall raw_AddDefaultValue (
  1519.         VARIANT DefaultValue ) = 0;
  1520.     virtual HRESULT __stdcall raw_DeleteNthDefaultValue (
  1521.         short index ) = 0;
  1522.     virtual HRESULT __stdcall get_EnableNullValue (
  1523.         VARIANT_BOOL * pBool ) = 0;
  1524.     virtual HRESULT __stdcall put_EnableNullValue (
  1525.         VARIANT_BOOL pBool ) = 0;
  1526.     virtual HRESULT __stdcall get_EnableMultipleValues (
  1527.         VARIANT_BOOL * pBool ) = 0;
  1528.     virtual HRESULT __stdcall put_EnableMultipleValues (
  1529.         VARIANT_BOOL pBool ) = 0;
  1530.     virtual HRESULT __stdcall get_DiscreteOrRangeKind (
  1531.         enum CRDiscreteOrRangeKind * pDiscreteOrRangeKind ) = 0;
  1532.     virtual HRESULT __stdcall put_DiscreteOrRangeKind (
  1533.         enum CRDiscreteOrRangeKind pDiscreteOrRangeKind ) = 0;
  1534.     virtual HRESULT __stdcall get_PlaceInGroup (
  1535.         VARIANT_BOOL * pBool ) = 0;
  1536.     virtual HRESULT __stdcall put_PlaceInGroup (
  1537.         VARIANT_BOOL pBool ) = 0;
  1538.     virtual HRESULT __stdcall get_GroupNumber (
  1539.         short * pGroupNumber ) = 0;
  1540.     virtual HRESULT __stdcall put_GroupNumber (
  1541.         short pGroupNumber ) = 0;
  1542.     virtual HRESULT __stdcall get_EnableExclusiveGroup (
  1543.         VARIANT_BOOL * pBool ) = 0;
  1544.     virtual HRESULT __stdcall put_EnableExclusiveGroup (
  1545.         VARIANT_BOOL pBool ) = 0;
  1546.     virtual HRESULT __stdcall get_NumberOfCurrentValues (
  1547.         short * pNumberOfCurrentValues ) = 0;
  1548.     virtual HRESULT __stdcall get_NumberOfCurrentRanges (
  1549.         short * pNumberOfCurrentRanges ) = 0;
  1550.     virtual HRESULT __stdcall raw_GetNthCurrentValue (
  1551.         short index,
  1552.         VARIANT * pCurrentValue ) = 0;
  1553.     virtual HRESULT __stdcall raw_AddCurrentValue (
  1554.         VARIANT CurrentValue ) = 0;
  1555.     virtual HRESULT __stdcall raw_GetNthCurrentRange (
  1556.         short index,
  1557.         VARIANT * pStart,
  1558.         VARIANT * pEnd,
  1559.         enum CRRangeInfo * pRangeInfo ) = 0;
  1560.     virtual HRESULT __stdcall raw_AddCurrentRange (
  1561.         VARIANT start,
  1562.         VARIANT end,
  1563.         enum CRRangeInfo rangeInfo ) = 0;
  1564.     virtual HRESULT __stdcall raw_ClearCurrentValueAndRange ( ) = 0;
  1565.     virtual HRESULT __stdcall get_NthValueDescription (
  1566.         short index,
  1567.         BSTR * pValueDescription ) = 0;
  1568.     virtual HRESULT __stdcall put_NthValueDescription (
  1569.         short index,
  1570.         BSTR pValueDescription ) = 0;
  1571.     virtual HRESULT __stdcall get_EnableShowDescriptionOnly (
  1572.         VARIANT_BOOL * pBool ) = 0;
  1573.     virtual HRESULT __stdcall put_EnableShowDescriptionOnly (
  1574.         VARIANT_BOOL pBool ) = 0;
  1575.     virtual HRESULT __stdcall get_PicklistSortMethod (
  1576.         enum CRParameterPicklistSortMethod * pMethod ) = 0;
  1577.     virtual HRESULT __stdcall put_PicklistSortMethod (
  1578.         enum CRParameterPicklistSortMethod pMethod ) = 0;
  1579.     virtual HRESULT __stdcall get_EnableSortBasedOnDesc (
  1580.         VARIANT_BOOL * pBool ) = 0;
  1581.     virtual HRESULT __stdcall put_EnableSortBasedOnDesc (
  1582.         VARIANT_BOOL pBool ) = 0;
  1583. };
  1584. enum CRParameterFieldType
  1585. {
  1586.     crReportParameter = 0,
  1587.     crQueryParameter = 1,
  1588.     crStoreProcedureParameter = 2
  1589. };
  1590. enum CRDiscreteOrRangeKind
  1591. {
  1592.     crDiscreteValue = 0,
  1593.     crRangeValue = 1,
  1594.     crDiscreteAndRangeValue = 2
  1595. };
  1596. enum CRRangeInfo
  1597. {
  1598.     crRangeNotIncludeUpperLowerBound = 0,
  1599.     crRangeIncludeUpperBound = 1,
  1600.     crRangeIncludeLowerBound = 2,
  1601.     crRangeNoUpperBound = 4,
  1602.     crRangeNoLowerBound = 8
  1603. };
  1604. enum CRParameterPicklistSortMethod
  1605. {
  1606.     crNoSort = 0,
  1607.     crAlphanumericAscending = 1,
  1608.     crAlphanumericDescending = 2,
  1609.     crNumericAscending = 3,
  1610.     crNumericDescending = 4
  1611. };
  1612. struct __declspec(uuid("0bac5bc2-44c9-11d1-abec-00a0c9274b91"))
  1613. IGroupNameFieldDefinitions : IDispatch
  1614. {
  1615.     //
  1616.     // Property data
  1617.     //
  1618.     __declspec(property(get=GetItem))
  1619.     IGroupNameFieldDefinitionPtr Item[];
  1620.     __declspec(property(get=GetCount))
  1621.     long Count;
  1622.     __declspec(property(get=GetParent))
  1623.     IReportPtr Parent;
  1624.     __declspec(property(get=Get_NewEnum))
  1625.     IUnknownPtr _NewEnum;
  1626.     //
  1627.     // Wrapper methods for error-handling
  1628.     //
  1629.     IUnknownPtr Get_NewEnum ( );
  1630.     IGroupNameFieldDefinitionPtr GetItem (
  1631.         long index );
  1632.     long GetCount ( );
  1633.     IReportPtr GetParent ( );
  1634.     //
  1635.     // Raw methods provided by interface
  1636.     //
  1637.     virtual HRESULT __stdcall get__NewEnum (
  1638.         IUnknown * * ppNewEnum ) = 0;
  1639.     virtual HRESULT __stdcall get_Item (
  1640.         long index,
  1641.         struct IGroupNameFieldDefinition * * ppGroupNameFieldDefinition ) = 0;
  1642.     virtual HRESULT __stdcall get_Count (
  1643.         long * pCount ) = 0;
  1644.     virtual HRESULT __stdcall get_Parent (
  1645.         struct IReport * * ppParent ) = 0;
  1646. };
  1647. struct __declspec(uuid("0bac5bd2-44c9-11d1-abec-00a0c9274b91"))
  1648. IGroupNameFieldDefinition : IDispatch
  1649. {
  1650.     //
  1651.     // Property data
  1652.     //
  1653.     __declspec(property(get=GetName))
  1654.     _bstr_t Name;
  1655.     __declspec(property(get=GetValueType))
  1656.     CRFieldValueType ValueType;
  1657.     __declspec(property(get=GetNumberOfBytes))
  1658.     short NumberOfBytes;
  1659.     __declspec(property(get=GetParent))
  1660.     IReportPtr Parent;
  1661.     __declspec(property(get=GetKind))
  1662.     enum CRFieldKind Kind;
  1663.     __declspec(property(get=GetPreviousValue))
  1664.     _variant_t PreviousValue;
  1665.     __declspec(property(get=GetNextValue))
  1666.     _variant_t NextValue;
  1667.     __declspec(property(get=GetValue))
  1668.     _variant_t Value;
  1669.     __declspec(property(get=GetGroupNumber))
  1670.     short GroupNumber;
  1671.     __declspec(property(get=GetGroupNameFieldName))
  1672.     _bstr_t GroupNameFieldName;
  1673.     //
  1674.     // Wrapper methods for error-handling
  1675.     //
  1676.     enum CRFieldKind GetKind ( );
  1677.     CRFieldValueType GetValueType ( );
  1678.     short GetNumberOfBytes ( );
  1679.     _bstr_t GetName ( );
  1680.     _variant_t GetValue ( );
  1681.     _bstr_t GetGroupNameFieldName ( );
  1682.     IReportPtr GetParent ( );
  1683.     _variant_t GetPreviousValue ( );
  1684.     _variant_t GetNextValue ( );
  1685.     short GetGroupNumber ( );
  1686.     //
  1687.     // Raw methods provided by interface
  1688.     //
  1689.     virtual HRESULT __stdcall get_Kind (
  1690.         enum CRFieldKind * pKind ) = 0;
  1691.     virtual HRESULT __stdcall get_ValueType (
  1692.         CRFieldValueType * pValueType ) = 0;
  1693.     virtual HRESULT __stdcall get_NumberOfBytes (
  1694.         short * pNumberOfBytes ) = 0;
  1695.     virtual HRESULT __stdcall get_Name (
  1696.         BSTR * pName ) = 0;
  1697.     virtual HRESULT __stdcall get_Value (
  1698.         VARIANT * pValue ) = 0;
  1699.     virtual HRESULT __stdcall get_GroupNameFieldName (
  1700.         BSTR * ppGroupNameFieldName ) = 0;
  1701.     virtual HRESULT __stdcall get_Parent (
  1702.         struct IReport * * ppParent ) = 0;
  1703.     virtual HRESULT __stdcall get_PreviousValue (
  1704.         VARIANT * pPreValue ) = 0;
  1705.     virtual HRESULT __stdcall get_NextValue (
  1706.         VARIANT * pNextValue ) = 0;
  1707.     virtual HRESULT __stdcall get_GroupNumber (
  1708.         short * pGroupNumber ) = 0;
  1709. };
  1710. struct __declspec(uuid("0bac5c02-44c9-11d1-abec-00a0c9274b91"))
  1711. ISummaryFieldDefinitions : IDispatch
  1712. {
  1713.     //
  1714.     // Property data
  1715.     //
  1716.     __declspec(property(get=GetItem))
  1717.     ISummaryFieldDefinitionPtr Item[];
  1718.     __declspec(property(get=GetCount))
  1719.     long Count;
  1720.     __declspec(property(get=GetParent))
  1721.     IReportPtr Parent;
  1722.     __declspec(property(get=Get_NewEnum))
  1723.     IUnknownPtr _NewEnum;
  1724.     //
  1725.     // Wrapper methods for error-handling
  1726.     //
  1727.     IUnknownPtr Get_NewEnum ( );
  1728.     ISummaryFieldDefinitionPtr GetItem (
  1729.         long index );
  1730.     long GetCount ( );
  1731.     IReportPtr GetParent ( );
  1732.     ISummaryFieldDefinitionPtr Add (
  1733.         long groupLevel,
  1734.         const _variant_t & Field,
  1735.         enum CRSummaryType SummaryType,
  1736.         const _variant_t & secondSummaryFieldOrFactor = vtMissing );
  1737.     HRESULT Delete (
  1738.         const _variant_t & index );
  1739.     //
  1740.     // Raw methods provided by interface
  1741.     //
  1742.     virtual HRESULT __stdcall get__NewEnum (
  1743.         IUnknown * * ppNewEnum ) = 0;
  1744.     virtual HRESULT __stdcall get_Item (
  1745.         long index,
  1746.         struct ISummaryFieldDefinition * * ppSummaryFieldDefinition ) = 0;
  1747.     virtual HRESULT __stdcall get_Count (
  1748.         long * pCount ) = 0;
  1749.     virtual HRESULT __stdcall get_Parent (
  1750.         struct IReport * * ppParent ) = 0;
  1751.     virtual HRESULT __stdcall raw_Add (
  1752.         long groupLevel,
  1753.         VARIANT Field,
  1754.         enum CRSummaryType SummaryType,
  1755.         VARIANT secondSummaryFieldOrFactor,
  1756.         struct ISummaryFieldDefinition * * ppSummaryDefinition ) = 0;
  1757.     virtual HRESULT __stdcall raw_Delete (
  1758.         VARIANT index ) = 0;
  1759. };
  1760. enum CRReportKind
  1761. {
  1762.     crColumnarReport = 1,
  1763.     crLabelReport = 2,
  1764.     crMulColumnReport = 3
  1765. };
  1766. struct __declspec(uuid("0bac5c82-44c9-11d1-abec-00a0c9274b91"))
  1767. IPageEngine : IDispatch
  1768. {
  1769.     //
  1770.     // Property data
  1771.     //
  1772.     __declspec(property(get=GetValueFormatOptions,put=PutValueFormatOptions))
  1773.     enum CRValueFormatType ValueFormatOptions;
  1774.     __declspec(property(get=GetParent))
  1775.     IReportPtr Parent;
  1776.     __declspec(property(get=GetPlaceHolderOptions,put=PutPlaceHolderOptions))
  1777.     enum CRPlaceHolderType PlaceHolderOptions;
  1778.     __declspec(property(get=GetImageOptions,put=PutImageOptions))
  1779.     enum CRImageType ImageOptions;
  1780.     //
  1781.     // Wrapper methods for error-handling
  1782.     //
  1783.     enum CRImageType GetImageOptions ( );
  1784.     void PutImageOptions (
  1785.         enum CRImageType pImageOptions );
  1786.     IPageGeneratorPtr CreatePageGenerator (
  1787.         const _variant_t & GroupPath,
  1788.         const _variant_t & DrillDownLevel = vtMissing );
  1789.     _variant_t RenderTotallerETF (
  1790.         const _variant_t & rootGroupPath,
  1791.         long startingChildNumber,
  1792.         short pastRootLevels,
  1793.         const _variant_t & maxNodeCount,
  1794.         enum CRRenderResultType resultType );
  1795.     _variant_t RenderTotallerHTML (
  1796.         const _variant_t & rootGroupPath,
  1797.         long startingChildNumber,
  1798.         short pastRootLevels,
  1799.         const _variant_t & maxNodeCount,
  1800.         const _variant_t & openGroupPath,
  1801.         VARIANT_BOOL includeDrillDownLinks,
  1802.         _bstr_t baseURL,
  1803.         enum CRRenderResultType resultType );
  1804.     IReportPtr GetParent ( );
  1805.     enum CRPlaceHolderType GetPlaceHolderOptions ( );
  1806.     void PutPlaceHolderOptions (
  1807.         enum CRPlaceHolderType pPlaceHolderType );
  1808.     enum CRValueFormatType GetValueFormatOptions ( );
  1809.     void PutValueFormatOptions (
  1810.         enum CRValueFormatType pValueFormatType );
  1811.     //
  1812.     // Raw methods provided by interface
  1813.     //
  1814.     virtual HRESULT __stdcall get_ImageOptions (
  1815.         enum CRImageType * pImageOptions ) = 0;
  1816.     virtual HRESULT __stdcall put_ImageOptions (
  1817.         enum CRImageType pImageOptions ) = 0;
  1818.     virtual HRESULT __stdcall raw_CreatePageGenerator (
  1819.         VARIANT GroupPath,
  1820.         VARIANT DrillDownLevel,
  1821.         struct IPageGenerator * * ppPageGenerator ) = 0;
  1822.     virtual HRESULT __stdcall raw_RenderTotallerETF (
  1823.         VARIANT rootGroupPath,
  1824.         long startingChildNumber,
  1825.         short pastRootLevels,
  1826.         VARIANT maxNodeCount,
  1827.         enum CRRenderResultType resultType,
  1828.         VARIANT * pETFArray ) = 0;
  1829.     virtual HRESULT __stdcall raw_RenderTotallerHTML (
  1830.         VARIANT rootGroupPath,
  1831.         long startingChildNumber,
  1832.         short pastRootLevels,
  1833.         VARIANT maxNodeCount,
  1834.         VARIANT openGroupPath,
  1835.         VARIANT_BOOL includeDrillDownLinks,
  1836.         BSTR baseURL,
  1837.         enum CRRenderResultType resultType,
  1838.         VARIANT * pHTMLArray ) = 0;
  1839.     virtual HRESULT __stdcall get_Parent (
  1840.         struct IReport * * ppParent ) = 0;
  1841.     virtual HRESULT __stdcall get_PlaceHolderOptions (
  1842.         enum CRPlaceHolderType * pPlaceHolderType ) = 0;
  1843.     virtual HRESULT __stdcall put_PlaceHolderOptions (
  1844.         enum CRPlaceHolderType pPlaceHolderType ) = 0;
  1845.     virtual HRESULT __stdcall get_ValueFormatOptions (
  1846.         enum CRValueFormatType * pValueFormatType ) = 0;
  1847.     virtual HRESULT __stdcall put_ValueFormatOptions (
  1848.         enum CRValueFormatType pValueFormatType ) = 0;
  1849. };
  1850. enum CRImageType
  1851. {
  1852.     crImageUnknown = 0,
  1853.     crDIBImageType = 1,
  1854.     crJPEGImageType = 2
  1855. };
  1856. struct __declspec(uuid("0bac5c92-44c9-11d1-abec-00a0c9274b91"))
  1857. IPageGenerator : IDispatch
  1858. {
  1859.     //
  1860.     // Property data
  1861.     //
  1862.     __declspec(property(get=GetContainingPageNumber))
  1863.     long ContainingPageNumber;
  1864.     __declspec(property(get=GetParent))
  1865.     IPageEnginePtr Parent;
  1866.     __declspec(property(get=GetContainingGroupPath))
  1867.     _variant_t ContainingGroupPath;
  1868.     __declspec(property(get=GetContainingGroupName))
  1869.     _bstr_t ContainingGroupName;
  1870.     __declspec(property(get=GetxOffset))
  1871.     long xOffset;
  1872.     __declspec(property(get=GetyOffset))
  1873.     long yOffset;
  1874.     __declspec(property(get=GetReportName))
  1875.     _bstr_t ReportName;
  1876.     __declspec(property(get=GetPages))
  1877.     IPagesPtr Pages;
  1878.     __declspec(property(get=GetDrillDownLevel))
  1879.     short DrillDownLevel;
  1880.     __declspec(property(get=GetGroupPath))
  1881.     _variant_t GroupPath;
  1882.     __declspec(property(get=GetGroupName))
  1883.     _bstr_t GroupName;
  1884.     //
  1885.     // Wrapper methods for error-handling
  1886.     //
  1887.     IPageEnginePtr GetParent ( );
  1888.     IPagesPtr GetPages ( );
  1889.     short GetDrillDownLevel ( );
  1890.     _variant_t GetGroupPath ( );
  1891.     long GetPageNumberForGroup (
  1892.         const _variant_t & GroupPath );
  1893.     IPageGeneratorPtr DrillOnGraph (
  1894.         long PageNumber,
  1895.         long xOffset,
  1896.         long yOffset );
  1897.     HRESULT SearchForText (
  1898.         _bstr_t Text,
  1899.         enum CRSearchDirection direction,
  1900.         long * pPageNumber );
  1901.     _bstr_t GetGroupName ( );
  1902.     _bstr_t GetReportName ( );
  1903.     long GetContainingPageNumber ( );
  1904.     _variant_t GetContainingGroupPath ( );
  1905.     _bstr_t GetContainingGroupName ( );
  1906.     long GetxOffset ( );
  1907.     long GetyOffset ( );
  1908.     _variant_t RenderTotallerETF (
  1909.         const _variant_t & rootGroupPath,
  1910.         long startingChildNumber,
  1911.         short pastRootLevels,
  1912.         const _variant_t & maxNodeCount,
  1913.         enum CRRenderResultType resultType );
  1914.     _variant_t RenderTotallerHTML (
  1915.         const _variant_t & rootGroupPath,
  1916.         long startingChildNumber,
  1917.         short pastRootLevels,
  1918.         const _variant_t & maxNodeCount,
  1919.         const _variant_t & openGroupPath,
  1920.         VARIANT_BOOL includeDrillDownLinks,
  1921.         _bstr_t baseURL,
  1922.         enum CRRenderResultType resultType );
  1923.     IPageGeneratorPtr DrillOnMap (
  1924.         long PageNumber,
  1925.         long xOffset,
  1926.         long yOffset );
  1927.     IPageGeneratorPtr DrillOnSubreport (
  1928.         long PageNumber,
  1929.         long xOffset,
  1930.         long yOffset );
  1931.     _variant_t Export (
  1932.         enum CRRenderResultType resultType );
  1933.     IPageGeneratorPtr CreateSubreportPageGenerator (
  1934.         const _variant_t & GroupPath,
  1935.         const _variant_t & DrillDownLevel = vtMissing );
  1936.     VARIANT_BOOL FindText (
  1937.         _bstr_t Text,
  1938.         enum CRSearchDirection direction,
  1939.         VARIANT * pPageNumber );
  1940.     //
  1941.     // Raw methods provided by interface
  1942.     //
  1943.     virtual HRESULT __stdcall get_Parent (
  1944.         struct IPageEngine * * ppParent ) = 0;
  1945.     virtual HRESULT __stdcall get_Pages (
  1946.         struct IPages * * ppPages ) = 0;
  1947.     virtual HRESULT __stdcall get_DrillDownLevel (
  1948.         short * pDrillDownLevel ) = 0;
  1949.     virtual HRESULT __stdcall get_GroupPath (
  1950.         VARIANT * pGroupPath ) = 0;
  1951.     virtual HRESULT __stdcall raw_GetPageNumberForGroup (
  1952.         VARIANT GroupPath,
  1953.         long * pPageNumber ) = 0;
  1954.     virtual HRESULT __stdcall raw_DrillOnGraph (
  1955.         long PageNumber,
  1956.         long xOffset,
  1957.         long yOffset,
  1958.         struct IPageGenerator * * ppPageGenerator ) = 0;
  1959.     virtual HRESULT __stdcall raw_SearchForText (
  1960.         BSTR Text,
  1961.         enum CRSearchDirection direction,
  1962.         long * pPageNumber ) = 0;
  1963.     virtual HRESULT __stdcall get_GroupName (
  1964.         BSTR * ppGroupName ) = 0;
  1965.     virtual HRESULT __stdcall get_ReportName (
  1966.         BSTR * ppReportName ) = 0;
  1967.     virtual HRESULT __stdcall get_ContainingPageNumber (
  1968.         long * pContainingPageNumber ) = 0;
  1969.     virtual HRESULT __stdcall get_ContainingGroupPath (
  1970.         VARIANT * pContainingGroupPath ) = 0;
  1971.     virtual HRESULT __stdcall get_ContainingGroupName (
  1972.         BSTR * ppContainingGroupName ) = 0;
  1973.     virtual HRESULT __stdcall get_xOffset (
  1974.         long * pXOffset ) = 0;
  1975.     virtual HRESULT __stdcall get_yOffset (
  1976.         long * pYOffset ) = 0;
  1977.     virtual HRESULT __stdcall raw_RenderTotallerETF (
  1978.         VARIANT rootGroupPath,
  1979.         long startingChildNumber,
  1980.         short pastRootLevels,
  1981.         VARIANT maxNodeCount,
  1982.         enum CRRenderResultType resultType,
  1983.         VARIANT * pETFArray ) = 0;
  1984.     virtual HRESULT __stdcall raw_RenderTotallerHTML (
  1985.         VARIANT rootGroupPath,
  1986.         long startingChildNumber,
  1987.         short pastRootLevels,
  1988.         VARIANT maxNodeCount,
  1989.         VARIANT openGroupPath,
  1990.         VARIANT_BOOL includeDrillDownLinks,
  1991.         BSTR baseURL,
  1992.         enum CRRenderResultType resultType,
  1993.         VARIANT * pHTMLArray ) = 0;
  1994.     virtual HRESULT __stdcall raw_DrillOnMap (
  1995.         long PageNumber,
  1996.         long xOffset,
  1997.         long yOffset,
  1998.         struct IPageGenerator * * ppPageGenerator ) = 0;
  1999.     virtual HRESULT __stdcall raw_DrillOnSubreport (
  2000.         long PageNumber,
  2001.         long xOffset,
  2002.         long yOffset,
  2003.         struct IPageGenerator * * ppPageGenerator ) = 0;
  2004.     virtual HRESULT __stdcall raw_Export (
  2005.         enum CRRenderResultType resultType,
  2006.         VARIANT * pExportArray ) = 0;
  2007.     virtual HRESULT __stdcall raw_CreateSubreportPageGenerator (
  2008.         VARIANT GroupPath,
  2009.         VARIANT DrillDownLevel,
  2010.         struct IPageGenerator * * ppPageGenerator ) = 0;
  2011.     virtual HRESULT __stdcall raw_FindText (
  2012.         BSTR Text,
  2013.         enum CRSearchDirection direction,
  2014.         VARIANT * pPageNumber,
  2015.         VARIANT_BOOL * pBool ) = 0;
  2016. };
  2017. struct __declspec(uuid("0bac5ca2-44c9-11d1-abec-00a0c9274b91"))
  2018. IPages : IDispatch
  2019. {
  2020.     //
  2021.     // Property data
  2022.     //
  2023.     __declspec(property(get=GetItem))
  2024.     IPagePtr Item[];
  2025.     __declspec(property(get=GetCount))
  2026.     long Count;
  2027.     __declspec(property(get=GetParent))
  2028.     IPageGeneratorPtr Parent;
  2029.     __declspec(property(get=Get_NewEnum))
  2030.     IUnknownPtr _NewEnum;
  2031.     //
  2032.     // Wrapper methods for error-handling
  2033.     //
  2034.     IUnknownPtr Get_NewEnum ( );
  2035.     IPagePtr GetItem (
  2036.         long index );
  2037.     long GetCount ( );
  2038.     IPageGeneratorPtr GetParent ( );
  2039.     //
  2040.     // Raw methods provided by interface
  2041.     //
  2042.     virtual HRESULT __stdcall get__NewEnum (
  2043.         IUnknown * * ppNewEnum ) = 0;
  2044.     virtual HRESULT __stdcall get_Item (
  2045.         long index,
  2046.         struct IPage * * ppPage ) = 0;
  2047.     virtual HRESULT __stdcall get_Count (
  2048.         long * pCount ) = 0;
  2049.     virtual HRESULT __stdcall get_Parent (
  2050.         struct IPageGenerator * * ppPageGenerator ) = 0;
  2051. };
  2052. struct __declspec(uuid("0bac5cb2-44c9-11d1-abec-00a0c9274b91"))
  2053. IPage : IDispatch
  2054. {
  2055.     //
  2056.     // Property data
  2057.     //
  2058.     __declspec(property(get=GetIsLastPage))
  2059.     VARIANT_BOOL IsLastPage;
  2060.     __declspec(property(get=GetParent))
  2061.     IPageGeneratorPtr Parent;
  2062.     __declspec(property(get=GetIsMissingTotalPageCount))
  2063.     VARIANT_BOOL IsMissingTotalPageCount;
  2064.     __declspec(property(get=GetPageNumber))
  2065.     long PageNumber;
  2066.     //
  2067.     // Wrapper methods for error-handling
  2068.     //
  2069.     IPageGeneratorPtr GetParent ( );
  2070.     long GetPageNumber ( );
  2071.     VARIANT_BOOL GetIsLastPage ( );
  2072.     _variant_t RenderEPF (
  2073.         enum CRRenderResultType resultType );
  2074.     _variant_t RenderHTML (
  2075.         VARIANT_BOOL includeDrillDownLinks,
  2076.         enum CRHTMLPageStyle pageStyle,
  2077.         enum CRHTMLToolbarStyle toolbarStyle,
  2078.         _bstr_t baseURL,
  2079.         enum CRRenderResultType resultType );
  2080.     VARIANT_BOOL GetIsMissingTotalPageCount ( );
  2081.     //
  2082.     // Raw methods provided by interface
  2083.     //
  2084.     virtual HRESULT __stdcall get_Parent (
  2085.         struct IPageGenerator * * ppPageGenerator ) = 0;
  2086.     virtual HRESULT __stdcall get_PageNumber (
  2087.         long * pPageNumber ) = 0;
  2088.     virtual HRESULT __stdcall get_IsLastPage (
  2089.         VARIANT_BOOL * pBool ) = 0;
  2090.     virtual HRESULT __stdcall raw_RenderEPF (
  2091.         enum CRRenderResultType resultType,
  2092.         VARIANT * pEPFArray ) = 0;
  2093.     virtual HRESULT __stdcall raw_RenderHTML (
  2094.         VARIANT_BOOL includeDrillDownLinks,
  2095.         enum CRHTMLPageStyle pageStyle,
  2096.         enum CRHTMLToolbarStyle toolbarStyle,
  2097.         BSTR baseURL,
  2098.         enum CRRenderResultType resultType,
  2099.         VARIANT * pHTMLArray ) = 0;
  2100.     virtual HRESULT __stdcall get_IsMissingTotalPageCount (
  2101.         VARIANT_BOOL * pBool ) = 0;
  2102. };
  2103. enum CRRenderResultType
  2104. {
  2105.     crUISafeArrayType = 8209,
  2106.     crBSTRType = 8
  2107. };
  2108. enum CRHTMLPageStyle
  2109. {
  2110.     crPlainPageStyle = 0,
  2111.     crToolbarPageStyle = 1,
  2112.     crFramePageStyle = 2,
  2113.     crToolbarAtTopPageStyle = 3,
  2114.     crToolbarAtBottomPageStyle = 4
  2115. };
  2116. enum CRHTMLToolbarStyle
  2117. {
  2118.     crToolbarRefreshButton = 1,
  2119.     crToolbarSearchBox = 2
  2120. };
  2121. enum CRSearchDirection
  2122. {
  2123.     crForward = 0,
  2124.     crBackward = 1
  2125. };
  2126. enum CRPlaceHolderType
  2127. {
  2128.     crDelayTotalPageCountCalc = 1,
  2129.     crAllowPlaceHolders = 2
  2130. };
  2131. enum CRValueFormatType
  2132. {
  2133.     crIncludeFieldValues = 1,
  2134.     crIncludeHiddenFields = 2,
  2135.     crAllowComplexFieldFormatting = 4
  2136. };
  2137. struct __declspec(uuid("0bac5cc2-44c9-11d1-abec-00a0c9274b91"))
  2138. IExportOptions : IDispatch
  2139. {
  2140.     //
  2141.     // Property data
  2142.     //
  2143.     __declspec(property(get=GetExcelUseConstantColumnWidth,put=PutExcelUseConstantColumnWidth))
  2144.     VARIANT_BOOL ExcelUseConstantColumnWidth;
  2145.     __declspec(property(get=GetExcelConstantColumnWidth,put=PutExcelConstantColumnWidth))
  2146.     double ExcelConstantColumnWidth;
  2147.     __declspec(property(get=GetExcelAreaType,put=PutExcelAreaType))
  2148.     enum CRAreaKind ExcelAreaType;
  2149.     __declspec(property(get=GetExcelAreaGroupNumber,put=PutExcelAreaGroupNumber))
  2150.     short ExcelAreaGroupNumber;
  2151.     __declspec(property(get=GetExcelUseTabularFormat,put=PutExcelUseTabularFormat))
  2152.     VARIANT_BOOL ExcelUseTabularFormat;
  2153.     __declspec(property(get=GetPDFLastPageNumber,put=PutPDFLastPageNumber))
  2154.     long PDFLastPageNumber;
  2155.     __declspec(property(get=GetRTFExportAllPages,put=PutRTFExportAllPages))
  2156.     VARIANT_BOOL RTFExportAllPages;
  2157.     __declspec(property(get=GetRTFFirstPageNumber,put=PutRTFFirstPageNumber))
  2158.     long RTFFirstPageNumber;
  2159.     __declspec(property(get=GetRTFLastPageNumber,put=PutRTFLastPageNumber))
  2160.     long RTFLastPageNumber;
  2161.     __declspec(property(get=GetXMLFileName,put=PutXMLFileName))
  2162.     _bstr_t XMLFileName;
  2163.     __declspec(property(get=GetXMLAllowMultipleFiles,put=PutXMLAllowMultipleFiles))
  2164.     VARIANT_BOOL XMLAllowMultipleFiles;
  2165.     __declspec(property(get=GetFormatType,put=PutFormatType))
  2166.     enum CRExportFormatType FormatType;
  2167.     __declspec(property(get=GetDestinationType,put=PutDestinationType))
  2168.     enum CRExportDestinationType DestinationType;
  2169.     __declspec(property(get=GetExchangeProfile,put=PutExchangeProfile))
  2170.     _bstr_t ExchangeProfile;
  2171.     __declspec(property(get=GetDiskFileName,put=PutDiskFileName))
  2172.     _bstr_t DiskFileName;
  2173.     __declspec(property(get=GetUseReportDateFormat,put=PutUseReportDateFormat))
  2174.     VARIANT_BOOL UseReportDateFormat;
  2175.     __declspec(property(get=GetUseReportNumberFormat,put=PutUseReportNumberFormat))
  2176.     VARIANT_BOOL UseReportNumberFormat;
  2177.     __declspec(property(get=GetCharFieldDelimiter,put=PutCharFieldDelimiter))
  2178.     _bstr_t CharFieldDelimiter;
  2179.     __declspec(property(get=GetCharStringDelimiter,put=PutCharStringDelimiter))
  2180.     _bstr_t CharStringDelimiter;
  2181.     __declspec(property(get=GetNumberOfLinesPerPage,put=PutNumberOfLinesPerPage))
  2182.     short NumberOfLinesPerPage;
  2183.     __declspec(property(get=GetODBCDataSourceName,put=PutODBCDataSourceName))
  2184.     _bstr_t ODBCDataSourceName;
  2185.     __declspec(property(get=GetODBCDataSourceUserID,put=PutODBCDataSourceUserID))
  2186.     _bstr_t ODBCDataSourceUserID;
  2187.     __declspec(property(put=PutODBCDataSourcePassword))
  2188.     _bstr_t ODBCDataSourcePassword;
  2189.     __declspec(property(get=GetODBCExportTableName,put=PutODBCExportTableName))
  2190.     _bstr_t ODBCExportTableName;
  2191.     __declspec(property(get=GetHTMLFileName,put=PutHTMLFileName))
  2192.     _bstr_t HTMLFileName;
  2193.     __declspec(property(put=PutExchangePassword))
  2194.     _bstr_t ExchangePassword;
  2195.     __declspec(property(get=GetExchangeDestinationType,put=PutExchangeDestinationType))
  2196.     enum CRExchangeDestinationType ExchangeDestinationType;
  2197.     __declspec(property(get=GetExchangeFolderPath,put=PutExchangeFolderPath))
  2198.     _bstr_t ExchangeFolderPath;
  2199.     __declspec(property(get=GetMailCcList,put=PutMailCcList))
  2200.     _bstr_t MailCcList;
  2201.     __declspec(property(get=GetMailToList,put=PutMailToList))
  2202.     _bstr_t MailToList;
  2203.     __declspec(property(get=GetParent))
  2204.     IReportPtr Parent;
  2205.     __declspec(property(get=GetMailSubject,put=PutMailSubject))
  2206.     _bstr_t MailSubject;
  2207.     __declspec(property(get=GetMailMessage,put=PutMailMessage))
  2208.     _bstr_t MailMessage;
  2209.     __declspec(property(get=GetMailBccList,put=PutMailBccList))
  2210.     _bstr_t MailBccList;
  2211.     __declspec(property(get=GetFormatDllName))
  2212.     _bstr_t FormatDllName;
  2213.     __declspec(property(get=GetDestinationDllName))
  2214.     _bstr_t DestinationDllName;
  2215.     __declspec(property(get=GetExchangeTabHasColumnHeadings,put=PutExchangeTabHasColumnHeadings))
  2216.     VARIANT_BOOL ExchangeTabHasColumnHeadings;
  2217.     __declspec(property(get=GetApplicationFileName,put=PutApplicationFileName))
  2218.     _bstr_t ApplicationFileName;
  2219.     __declspec(property(get=GetLotusDominoDatabaseName,put=PutLotusDominoDatabaseName))
  2220.     _bstr_t LotusDominoDatabaseName;
  2221.     __declspec(property(get=GetLotusDominoFormName,put=PutLotusDominoFormName))
  2222.     _bstr_t LotusDominoFormName;
  2223.     __declspec(property(get=GetLotusDominoComments,put=PutLotusDominoComments))
  2224.     _bstr_t LotusDominoComments;
  2225.     __declspec(property(get=GetHTMLHasPageNavigator,put=PutHTMLHasPageNavigator))
  2226.     VARIANT_BOOL HTMLHasPageNavigator;
  2227.     __declspec(property(get=GetHTMLEnableSeparatedPages,put=PutHTMLEnableSeparatedPages))
  2228.     VARIANT_BOOL HTMLEnableSeparatedPages;
  2229.     __declspec(property(get=GetPDFExportAllPages,put=PutPDFExportAllPages))
  2230.     VARIANT_BOOL PDFExportAllPages;
  2231.     __declspec(property(get=GetPDFFirstPageNumber,put=PutPDFFirstPageNumber))
  2232.     long PDFFirstPageNumber;
  2233.     __declspec(property(get=GetExcelTabHasColumnHeadings,put=PutExcelTabHasColumnHeadings))
  2234.     VARIANT_BOOL ExcelTabHasColumnHeadings;
  2235.     __declspec(property(get=GetExcelUseWorksheetFunctions,put=PutExcelUseWorksheetFunctions))
  2236.     VARIANT_BOOL ExcelUseWorksheetFunctions;
  2237.     //
  2238.     // Wrapper methods for error-handling
  2239.     //
  2240.     IReportPtr GetParent ( );
  2241.     enum CRExportFormatType GetFormatType ( );
  2242.     void PutFormatType (
  2243.         enum CRExportFormatType pFormatType );
  2244.     enum CRExportDestinationType GetDestinationType ( );
  2245.     void PutDestinationType (
  2246.         enum CRExportDestinationType pDestinationType );
  2247.     _bstr_t GetExchangeProfile ( );
  2248.     void PutExchangeProfile (
  2249.         _bstr_t ppExchangeProfile );
  2250.     _bstr_t GetDiskFileName ( );
  2251.     void PutDiskFileName (
  2252.         _bstr_t ppDiskFileName );
  2253.     VARIANT_BOOL GetUseReportDateFormat ( );
  2254.     void PutUseReportDateFormat (
  2255.         VARIANT_BOOL pBool );
  2256.     VARIANT_BOOL GetUseReportNumberFormat ( );
  2257.     void PutUseReportNumberFormat (
  2258.         VARIANT_BOOL pBool );
  2259.     _bstr_t GetCharFieldDelimiter ( );
  2260.     void PutCharFieldDelimiter (
  2261.         _bstr_t ppCharFieldDelimiter );
  2262.     _bstr_t GetCharStringDelimiter ( );
  2263.     void PutCharStringDelimiter (
  2264.         _bstr_t ppCharStringDelimiter );
  2265.     short GetNumberOfLinesPerPage ( );
  2266.     void PutNumberOfLinesPerPage (
  2267.         short pNumberOfLinesPerPage );
  2268.     _bstr_t GetODBCDataSourceName ( );
  2269.     void PutODBCDataSourceName (
  2270.         _bstr_t ppODBCDataSourceName );
  2271.     _bstr_t GetODBCDataSourceUserID ( );
  2272.     void PutODBCDataSourceUserID (
  2273.         _bstr_t ppODBCDataSourceUserID );
  2274.     void PutODBCDataSourcePassword (
  2275.         _bstr_t _arg1 );
  2276.     _bstr_t GetODBCExportTableName ( );
  2277.     void PutODBCExportTableName (
  2278.         _bstr_t ppODBCExportTableName );
  2279.     _bstr_t GetHTMLFileName ( );
  2280.     void PutHTMLFileName (
  2281.         _bstr_t ppHTMLFileName );
  2282.     void PutExchangePassword (
  2283.         _bstr_t _arg1 );
  2284.     enum CRExchangeDestinationType GetExchangeDestinationType ( );
  2285.     void PutExchangeDestinationType (
  2286.         enum CRExchangeDestinationType pExchangeDestinationType );
  2287.     _bstr_t GetExchangeFolderPath ( );
  2288.     void PutExchangeFolderPath (
  2289.         _bstr_t ppExchangeFolderPath );
  2290.     _bstr_t GetMailCcList ( );
  2291.     void PutMailCcList (
  2292.         _bstr_t ppMailCcList );
  2293.     _bstr_t GetMailToList ( );
  2294.     void PutMailToList (
  2295.         _bstr_t ppMailToList );
  2296.     _bstr_t GetMailSubject ( );
  2297.     void PutMailSubject (
  2298.         _bstr_t ppMailSubject );
  2299.     _bstr_t GetMailMessage ( );
  2300.     void PutMailMessage (
  2301.         _bstr_t ppMailMessage );
  2302.     _bstr_t GetMailBccList ( );
  2303.     void PutMailBccList (
  2304.         _bstr_t ppMailBccList );
  2305.     _bstr_t GetFormatDllName ( );
  2306.     _bstr_t GetDestinationDllName ( );
  2307.     VARIANT_BOOL GetExchangeTabHasColumnHeadings ( );
  2308.     void PutExchangeTabHasColumnHeadings (
  2309.         VARIANT_BOOL pBool );
  2310.     HRESULT Reset ( );
  2311.     HRESULT PromptForExportOptions ( );
  2312.     VARIANT_BOOL GetExcelTabHasColumnHeadings ( );
  2313.     void PutExcelTabHasColumnHeadings (
  2314.         VARIANT_BOOL pBool );
  2315.     VARIANT_BOOL GetExcelUseWorksheetFunctions ( );
  2316.     void PutExcelUseWorksheetFunctions (
  2317.         VARIANT_BOOL pBool );
  2318.     VARIANT_BOOL GetExcelUseConstantColumnWidth ( );
  2319.     void PutExcelUseConstantColumnWidth (
  2320.         VARIANT_BOOL pBool );
  2321.     double GetExcelConstantColumnWidth ( );
  2322.     void PutExcelConstantColumnWidth (
  2323.         double pColWidth );
  2324.     enum CRAreaKind GetExcelAreaType ( );
  2325.     void PutExcelAreaType (
  2326.         enum CRAreaKind pAreaKind );
  2327.     short GetExcelAreaGroupNumber ( );
  2328.     void PutExcelAreaGroupNumber (
  2329.         short pGroupNumber );
  2330.     VARIANT_BOOL GetExcelUseTabularFormat ( );
  2331.     void PutExcelUseTabularFormat (
  2332.         VARIANT_BOOL pBool );
  2333.     _bstr_t GetApplicationFileName ( );
  2334.     void PutApplicationFileName (
  2335.         _bstr_t ppAppFileName );
  2336.     _bstr_t GetLotusDominoDatabaseName ( );
  2337.     void PutLotusDominoDatabaseName (
  2338.         _bstr_t ppLotusDominoDatabaseName );
  2339.     _bstr_t GetLotusDominoFormName ( );
  2340.     void PutLotusDominoFormName (
  2341.         _bstr_t ppLotusDominoFormName );
  2342.     _bstr_t GetLotusDominoComments ( );
  2343.     void PutLotusDominoComments (
  2344.         _bstr_t ppLotusDominoComments );
  2345.     VARIANT_BOOL GetHTMLEnableSeparatedPages ( );
  2346.     void PutHTMLEnableSeparatedPages (
  2347.         VARIANT_BOOL pBool );
  2348.     VARIANT_BOOL GetHTMLHasPageNavigator ( );
  2349.     void PutHTMLHasPageNavigator (
  2350.         VARIANT_BOOL pBool );
  2351.     VARIANT_BOOL GetPDFExportAllPages ( );
  2352.     void PutPDFExportAllPages (
  2353.         VARIANT_BOOL pBool );
  2354.     long GetPDFFirstPageNumber ( );
  2355.     void PutPDFFirstPageNumber (
  2356.         long pFirstPageNumber );
  2357.     long GetPDFLastPageNumber ( );
  2358.     void PutPDFLastPageNumber (
  2359.         long pLastPageNumber );
  2360.     VARIANT_BOOL GetRTFExportAllPages ( );
  2361.     void PutRTFExportAllPages (
  2362.         VARIANT_BOOL pBool );
  2363.     long GetRTFFirstPageNumber ( );
  2364.     void PutRTFFirstPageNumber (
  2365.         long pFirstPageNumber );
  2366.     long GetRTFLastPageNumber ( );
  2367.     void PutRTFLastPageNumber (
  2368.         long pLastPageNumber );
  2369.     _bstr_t GetXMLFileName ( );
  2370.     void PutXMLFileName (
  2371.         _bstr_t ppXMLFileName );
  2372.     VARIANT_BOOL GetXMLAllowMultipleFiles ( );
  2373.     void PutXMLAllowMultipleFiles (
  2374.         VARIANT_BOOL pBool );
  2375.     //
  2376.     // Raw methods provided by interface
  2377.     //
  2378.     virtual HRESULT __stdcall get_Parent (
  2379.         struct IReport * * ppParent ) = 0;
  2380.     virtual HRESULT __stdcall get_FormatType (
  2381.         enum CRExportFormatType * pFormatType ) = 0;
  2382.     virtual HRESULT __stdcall put_FormatType (
  2383.         enum CRExportFormatType pFormatType ) = 0;
  2384.     virtual HRESULT __stdcall get_DestinationType (
  2385.         enum CRExportDestinationType * pDestinationType ) = 0;
  2386.     virtual HRESULT __stdcall put_DestinationType (
  2387.         enum CRExportDestinationType pDestinationType ) = 0;
  2388.     virtual HRESULT __stdcall get_ExchangeProfile (
  2389.         BSTR * ppExchangeProfile ) = 0;
  2390.     virtual HRESULT __stdcall put_ExchangeProfile (
  2391.         BSTR ppExchangeProfile ) = 0;
  2392.     virtual HRESULT __stdcall get_DiskFileName (
  2393.         BSTR * ppDiskFileName ) = 0;
  2394.     virtual HRESULT __stdcall put_DiskFileName (
  2395.         BSTR ppDiskFileName ) = 0;
  2396.     virtual HRESULT __stdcall get_UseReportDateFormat (
  2397.         VARIANT_BOOL * pBool ) = 0;
  2398.     virtual HRESULT __stdcall put_UseReportDateFormat (
  2399.         VARIANT_BOOL pBool ) = 0;
  2400.     virtual HRESULT __stdcall get_UseReportNumberFormat (
  2401.         VARIANT_BOOL * pBool ) = 0;
  2402.     virtual HRESULT __stdcall put_UseReportNumberFormat (
  2403.         VARIANT_BOOL pBool ) = 0;
  2404.     virtual HRESULT __stdcall get_CharFieldDelimiter (
  2405.         BSTR * ppCharFieldDelimiter ) = 0;
  2406.     virtual HRESULT __stdcall put_CharFieldDelimiter (
  2407.         BSTR ppCharFieldDelimiter ) = 0;
  2408.     virtual HRESULT __stdcall get_CharStringDelimiter (
  2409.         BSTR * ppCharStringDelimiter ) = 0;
  2410.     virtual HRESULT __stdcall put_CharStringDelimiter (
  2411.         BSTR ppCharStringDelimiter ) = 0;
  2412.     virtual HRESULT __stdcall get_NumberOfLinesPerPage (
  2413.         short * pNumberOfLinesPerPage ) = 0;
  2414.     virtual HRESULT __stdcall put_NumberOfLinesPerPage (
  2415.         short pNumberOfLinesPerPage ) = 0;
  2416.     virtual HRESULT __stdcall get_ODBCDataSourceName (
  2417.         BSTR * ppODBCDataSourceName ) = 0;
  2418.     virtual HRESULT __stdcall put_ODBCDataSourceName (
  2419.         BSTR ppODBCDataSourceName ) = 0;
  2420.     virtual HRESULT __stdcall get_ODBCDataSourceUserID (
  2421.         BSTR * ppODBCDataSourceUserID ) = 0;
  2422.     virtual HRESULT __stdcall put_ODBCDataSourceUserID (
  2423.         BSTR ppODBCDataSourceUserID ) = 0;
  2424.     virtual HRESULT __stdcall put_ODBCDataSourcePassword (
  2425.         BSTR _arg1 ) = 0;
  2426.     virtual HRESULT __stdcall get_ODBCExportTableName (
  2427.         BSTR * ppODBCExportTableName ) = 0;
  2428.     virtual HRESULT __stdcall put_ODBCExportTableName (
  2429.         BSTR ppODBCExportTableName ) = 0;
  2430.     virtual HRESULT __stdcall get_HTMLFileName (
  2431.         BSTR * ppHTMLFileName ) = 0;
  2432.     virtual HRESULT __stdcall put_HTMLFileName (
  2433.         BSTR ppHTMLFileName ) = 0;
  2434.     virtual HRESULT __stdcall put_ExchangePassword (
  2435.         BSTR _arg1 ) = 0;
  2436.     virtual HRESULT __stdcall get_ExchangeDestinationType (
  2437.         enum CRExchangeDestinationType * pExchangeDestinationType ) = 0;
  2438.     virtual HRESULT __stdcall put_ExchangeDestinationType (
  2439.         enum CRExchangeDestinationType pExchangeDestinationType ) = 0;
  2440.     virtual HRESULT __stdcall get_ExchangeFolderPath (
  2441.         BSTR * ppExchangeFolderPath ) = 0;
  2442.     virtual HRESULT __stdcall put_ExchangeFolderPath (
  2443.         BSTR ppExchangeFolderPath ) = 0;
  2444.     virtual HRESULT __stdcall get_MailCcList (
  2445.         BSTR * ppMailCcList ) = 0;
  2446.     virtual HRESULT __stdcall put_MailCcList (
  2447.         BSTR ppMailCcList ) = 0;
  2448.     virtual HRESULT __stdcall get_MailToList (
  2449.         BSTR * ppMailToList ) = 0;
  2450.     virtual HRESULT __stdcall put_MailToList (
  2451.         BSTR ppMailToList ) = 0;
  2452.     virtual HRESULT __stdcall get_MailSubject (
  2453.         BSTR * ppMailSubject ) = 0;
  2454.     virtual HRESULT __stdcall put_MailSubject (
  2455.         BSTR ppMailSubject ) = 0;
  2456.     virtual HRESULT __stdcall get_MailMessage (
  2457.         BSTR * ppMailMessage ) = 0;
  2458.     virtual HRESULT __stdcall put_MailMessage (
  2459.         BSTR ppMailMessage ) = 0;
  2460.     virtual HRESULT __stdcall get_MailBccList (
  2461.         BSTR * ppMailBccList ) = 0;
  2462.     virtual HRESULT __stdcall put_MailBccList (
  2463.         BSTR ppMailBccList ) = 0;
  2464.     virtual HRESULT __stdcall get_FormatDllName (
  2465.         BSTR * ppFormatDllName ) = 0;
  2466.     virtual HRESULT __stdcall get_DestinationDllName (
  2467.         BSTR * ppDestinationDllName ) = 0;
  2468.     virtual HRESULT __stdcall get_ExchangeTabHasColumnHeadings (
  2469.         VARIANT_BOOL * pBool ) = 0;
  2470.     virtual HRESULT __stdcall put_ExchangeTabHasColumnHeadings (
  2471.         VARIANT_BOOL pBool ) = 0;
  2472.     virtual HRESULT __stdcall raw_Reset ( ) = 0;
  2473.     virtual HRESULT __stdcall raw_PromptForExportOptions ( ) = 0;
  2474.     virtual HRESULT __stdcall get_ExcelTabHasColumnHeadings (
  2475.         VARIANT_BOOL * pBool ) = 0;
  2476.     virtual HRESULT __stdcall put_ExcelTabHasColumnHeadings (
  2477.         VARIANT_BOOL pBool ) = 0;
  2478.     virtual HRESULT __stdcall get_ExcelUseWorksheetFunctions (
  2479.         VARIANT_BOOL * pBool ) = 0;
  2480.     virtual HRESULT __stdcall put_ExcelUseWorksheetFunctions (
  2481.         VARIANT_BOOL pBool ) = 0;
  2482.     virtual HRESULT __stdcall get_ExcelUseConstantColumnWidth (
  2483.         VARIANT_BOOL * pBool ) = 0;
  2484.     virtual HRESULT __stdcall put_ExcelUseConstantColumnWidth (
  2485.         VARIANT_BOOL pBool ) = 0;
  2486.     virtual HRESULT __stdcall get_ExcelConstantColumnWidth (
  2487.         double * pColWidth ) = 0;
  2488.     virtual HRESULT __stdcall put_ExcelConstantColumnWidth (
  2489.         double pColWidth ) = 0;
  2490.     virtual HRESULT __stdcall get_ExcelAreaType (
  2491.         enum CRAreaKind * pAreaKind ) = 0;
  2492.     virtual HRESULT __stdcall put_ExcelAreaType (
  2493.         enum CRAreaKind pAreaKind ) = 0;
  2494.     virtual HRESULT __stdcall get_ExcelAreaGroupNumber (
  2495.         short * pGroupNumber ) = 0;
  2496.     virtual HRESULT __stdcall put_ExcelAreaGroupNumber (
  2497.         short pGroupNumber ) = 0;
  2498.     virtual HRESULT __stdcall get_ExcelUseTabularFormat (
  2499.         VARIANT_BOOL * pBool ) = 0;
  2500.     virtual HRESULT __stdcall put_ExcelUseTabularFormat (
  2501.         VARIANT_BOOL pBool ) = 0;
  2502.     virtual HRESULT __stdcall get_ApplicationFileName (
  2503.         BSTR * ppAppFileName ) = 0;
  2504.     virtual HRESULT __stdcall put_ApplicationFileName (
  2505.         BSTR ppAppFileName ) = 0;
  2506.     virtual HRESULT __stdcall get_LotusDominoDatabaseName (
  2507.         BSTR * ppLotusDominoDatabaseName ) = 0;
  2508.     virtual HRESULT __stdcall put_LotusDominoDatabaseName (
  2509.         BSTR ppLotusDominoDatabaseName ) = 0;
  2510.     virtual HRESULT __stdcall get_LotusDominoFormName (
  2511.         BSTR * ppLotusDominoFormName ) = 0;
  2512.     virtual HRESULT __stdcall put_LotusDominoFormName (
  2513.         BSTR ppLotusDominoFormName ) = 0;
  2514.     virtual HRESULT __stdcall get_LotusDominoComments (
  2515.         BSTR * ppLotusDominoComments ) = 0;
  2516.     virtual HRESULT __stdcall put_LotusDominoComments (
  2517.         BSTR ppLotusDominoComments ) = 0;
  2518.     virtual HRESULT __stdcall get_HTMLEnableSeparatedPages (
  2519.         VARIANT_BOOL * pBool ) = 0;
  2520.     virtual HRESULT __stdcall put_HTMLEnableSeparatedPages (