go to post Oliver Wilms · Dec 16, 2019 I am pretty sure I have used SQL Outbound Adapter with local cache database / namespace. I think you should be able to do the same for Inbound Adapter. I had to create a system DSN when I set this up on my Windows laptop.
go to post Oliver Wilms · Nov 28, 2019 System DSN and Credential was required. Now it works without error. Thank you
go to post Oliver Wilms · Nov 28, 2019 I believe I need System DSN, not User DSN. How do I create System DSN? I need to run Control Panel as Administartor? It does not allow me...
go to post Oliver Wilms · Sep 19, 2019 I removed the outer group and it worked correctly: name="Report" sql="SELECT ID, CreatedDate, CreatedTime, availabilityStatus FROM AETMON.AvailabilityLog WHERE CREATEDDATE=? ORDER BY CreatedDate, CreatedTime">
go to post Oliver Wilms · Aug 27, 2019 Alexander,I still get no line even though everything else seems correct from what I can tell on my end. I do a lot of debugging / logging and I observe getAxisY and getAxisTime are called way more often than what seems necessary...
go to post Oliver Wilms · Aug 27, 2019 Alexander,Thank you for your response. I understand that get data method only needs to return the Y-Axis values. In my case they will be 0 if the system I monitor is down or 1 if the status is good. I envision I may calculate a Uptime % per time selected by user later. Actually very soon. I need to demo this today.The values for x-Axis, Date/Time stamp when system status was checked, are supplied by a separate method.Do you think it is good to try and store values for x and y-Axes in the same data array?I will post another update soon after I get a chance to try it out.Oliver
go to post Oliver Wilms · Aug 23, 2019 Hello,I am trying Zen Report and Zen Page. I have Zen Page that displays a calendar to choose Date. I can display Zen Report inside iFrame when User clicks a button. It looks good EXCEPT my line graph shows no data values. I copy my Report class below. I hope someone will tell me what I am missing or what is wrong. This is my first Zen Report. Thanks/// AETMON.ReportClass AETMON.Report Extends %ZEN.Report.reportPage{/// Class name of application this report belongs to.Parameter APPLICATION;/// Specifies the default display mode used for this report if/// the URL parameter, <var>$MODE</var>, is not present.Parameter DEFAULTMODE As STRING [ Constraint = ",html,tohtml,toxslfo,pdf,xml,xslfo,excel,toexcel,ps,pdfprint,xlsx,tiff,displayxlsx,fo2pdf,foandpdf", Flags = ENUM ] = "html";/// This is the optional XML namespace used for the report.Parameter REPORTXMLNAMESPACE;Property Availability As %ZEN.Datatype.list(DELIMITER = ",");Property AvaiDateTime As %ZEN.Datatype.list(DELIMITER = ",");Property CreatedDate As %ZEN.Datatype.string(ZENURL = "CreatedDate");/// This XML defines the logical contents of this report.XData ReportDefinition [ XMLNamespace = "http://www.intersystems.com/zen/report/definition" ]{<report xmlns="http://www.intersystems.com/zen/report/definition" name="Report" sql="SELECT ID, CreatedDate, CreatedTime, availabilityStatus FROM AETMON.AvailabilityLog WHERE CREATEDDATE=? ORDER BY CreatedDate, CreatedTime"><parameter expression='..CreatedDate'/><group name="CreatedDate" breakOnField="CreatedDate"><attribute name="Date" field="CreatedDate" /><group name="record"><attribute name="id" field="ID" /><attribute name="Time" field="CreatedTime" /><attribute name="Status" field="availabilityStatus" /></group><aggregate name="Count" type="SUM" field="availabilityStatus" /></group></report>}/// This XML defines the display for this report./// This is used to generate the XSLT stylesheets for both HTML and XSL-FO.XData ReportDisplay [ XMLNamespace = "http://www.intersystems.com/zen/report/display" ]{<report xmlns="http://www.intersystems.com/zen/report/display" name="Report" title="AET Availability Report"><!-- Optional Init element inserts custom XSLT instructions at the top level of the generated XSLT stylesheet. --><init ></init><!-- Optional Document element specifies page layout and style characteristics. --><document width="8.5in" height="11in" marginLeft="1.25in" marginRight="1.25in" marginTop="1.0in" marginBottom="1.0in" ></document><!-- Optional Pageheader element. --><pageheader ></pageheader><!-- Optional Pagefooter element. Does not apply in HTML output. --><pagefooter ></pagefooter><!-- Required Body element. --><body><p class="banner1">AET Availability Report</p><clineChartongetData="getchartdata"title="Availability"height="400px" width="400px"markersVisible="true"plotStyle="stroke-width: 1px;"seriesYAxes="0"ongetLabelX="getAxisTime"><yAxis minValue="0" maxValue="1" /></clineChart><group name="CreatedDate" line="1px"><table orient="row" width="6in"><item field="@Date" width="2in"><caption value="Date:" width="2in"/></item><group name="record" line="1px"><table orient="row" width="6in"><item field="@Time" width="2in"><caption value="Time:" width="2in"/></item><item field="@Status" ><caption value="Status:"/></item></table></group></table></group></body></report>}Method getAxisTime(val,yseries){Set tTime = $Piece(..AvaiDateTime,",",(val+1))Quit $ZTime(tTime)}Method getchartdata(ByRef var,chart){Do ##class(AETMON.Utility).DebugAETMON("AETMON.Report getchartdata")Try {Set sc = $System.Status.OK()Set tTestDate = "08/06/2019"Set pFrom = $ZDateH(tTestDate)Set pTo = $ZDateH(tTestDate)// Get a resultset containing Availability dataSet sc = ##class(AETMON.AvailabilityLog).GetAvailability(pFrom,pTo,.rs)Quit:$System.Status.IsError(sc)Set tCount = 0While (rs.%Next()) {Set var(tCount,0) = rs.%Get("availabilityStatus")Set var(tCount,1) = rs.%Get("CreatedTime")If $Increment(tCount)}}Catch(ex) {Set sc = ex.AsStatus()}Set tCreatedTimes = var(0,1) _ "," _ var(1,1)Do ##class(AETMON.Utility).DebugAETMON("AETMON.Report getchartdata ..AvaiDateTime = "_tCreatedTimes)Set ..AvaiDateTime = tCreatedTimesQuit sc}}
go to post Oliver Wilms · Aug 17, 2019 When I add the Business Metric to a Dashboard or Production Monitor, I see the most recent data for the Business Metric. I need to be able to go back in time and show data for selected dates and times. I think a Pivot Table is what I need. I tried to define a Cube based on my persistent class, but it did not work as expected.
go to post Oliver Wilms · Aug 17, 2019 I have added the Business Metric to my production monitor. It works good. However it only shows the most recent data for Availability. I need to be able to allow user to choose dates and times and show Availability status for the selected time period. I am able to run SQL query and show the data on a CSP page. However I am lacking the line graph. I tried to set up a cube but it is not working as expected.My persistent data is very simple class:s AETMON.AvailabilityLog Extends (%Persistent, %XML.Adaptor){Property CreatedDate As %Date;Property CreatedTime As %Time;Property availabilityStatus As %Boolean;Storage Default{<Data name="AvailabilityLogDefaultData"><Value name="1"><Value>%%CLASSNAME</Value></Value><Value name="2"><Value>CreatedDate</Value></Value><Value name="3"><Value>CreatedTime</Value></Value><Value name="4"><Value>availabilityStatus</Value></Value></Data><DataLocation>^AETMON.AvailabilityLogD</DataLocation><DefaultData>AvailabilityLogDefaultData</DefaultData><IdLocation>^AETMON.AvailabilityLogD</IdLocation><IndexLocation>^AETMON.AvailabilityLogI</IndexLocation><StreamLocation>^AETMON.AvailabilityLogS</StreamLocation><Type>%Library.CacheStorage</Type>}} I have properties for Date, Time, and boolean Status. My cube produced the class below:/// Class AETMON.Cube.Availability Extends %DeepSee.CubeDefinition [ DependsOn = AETMON.AvailabilityLog, ProcedureBlock ]{/// Cube definition from Architect.XData Cube [ XMLNamespace = "http://www.intersystems.com/deepsee" ]{<cube xmlns="http://www.intersystems.com/deepsee" name="Availability" displayName="Availability" disabled="false" abstract="false" sourceClass="AETMON.AvailabilityLog" countMeasureName="%COUNT" bucketSize="8" bitmapChunkInMemory="false" precompute="0" disableListingGroups="false"> <dimension name="availabilityStatus" displayName="Status" disabled="false" hasAll="false" allCaption="All availabilityStatus" allDisplayName="availabilityStatus" type="data" calendar="gregorian" iKnowType="entity" hidden="false" showHierarchies="default"> <hierarchy name="H1" disabled="false" hidden="false"> <level name="availabilityStatus" displayName="Status" disabled="false" sourceProperty="availabilityStatus" list="false" useDisplayValue="true" useAsFilter="true" hidden="false"> </level> </hierarchy> </dimension></cube>}Parameter DOMAIN;} When I try DeepSee Analyzer, I just see Working..., but no Count
go to post Oliver Wilms · Aug 14, 2019 Evgeny,Thank you for your comment. I am new to DeepSee and I do not know if I should created a cube for this. Or a Business Metric? Or just SQL Data??Really I just need to show a report that can be printed or exported with start and end dates and times. I saw that Dashboards are easy to access from Management Portal compared to opening a DeepSee Report.And I want to show a line graph.Maybe a Zen report which I have not really done yet either.I am not sure what to do ???