|
|
|
@ -1,103 +1,195 @@
|
|
|
|
|
[% INCLUDE 'help-top.inc' %]
|
|
|
|
|
|
|
|
|
|
<h1>Add a Custom Report</h1>
|
|
|
|
|
<h1>Add a custom report</h1>
|
|
|
|
|
|
|
|
|
|
<h2>Guided Report Wizard</h2>
|
|
|
|
|
<h3>Guided report wizard</h3>
|
|
|
|
|
|
|
|
|
|
<p>If the report you need is not already available, the 'Guided Reports' Wizard will walk you through creating a custom report.</p>
|
|
|
|
|
<p>The guided report wizard will walk you through a six step process to generate a report.</p>
|
|
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
|
<li>Go to the 'Reports' module (usually under 'More' in your Global Nav)</li>
|
|
|
|
|
<li>Choose 'Guided Reports' under 'Guided Reports Wizard'</li>
|
|
|
|
|
</ul>
|
|
|
|
|
<p><strong>Step 1:</strong> Choose the module you want to report on. This will determine what tables and fields are available for you to query.</p>
|
|
|
|
|
|
|
|
|
|
<p>Answer the 6 questions presented in order to create your report.</p>
|
|
|
|
|
|
|
|
|
|
<p><strong>Step 1: Choose a Module to Report on</strong></p>
|
|
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
|
<li>Choose a Koha module to build a report on (patrons, circ, cataloging, etc)</li>
|
|
|
|
|
<li>Click 'Next'</li>
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
<p><strong>Step 2: Pick a Report Type</strong></p>
|
|
|
|
|
|
|
|
|
|
<ul><li style="color: #990000">IMPORTANT: Only Tabular should be chosen with this option</li></ul>
|
|
|
|
|
|
|
|
|
|
<p><strong>Step 3: Select Columns for Display</strong></p>
|
|
|
|
|
|
|
|
|
|
<p><strong>Step 4: Select Criteria to Limit</strong></p>
|
|
|
|
|
|
|
|
|
|
<ul><li>This is optional, if you don't want to limit results by any one field, just leave this section blank.</li></ul>
|
|
|
|
|
|
|
|
|
|
<p><strong>Step 5: Pick which columns to perform mathmatical functions on</strong></p>
|
|
|
|
|
|
|
|
|
|
<ul><li>This is optional, if you don't want to do any math on the results, just leave this section blank.</li></ul>
|
|
|
|
|
|
|
|
|
|
<p><strong>Step 6: Choose how you want the report ordered</strong></p>
|
|
|
|
|
|
|
|
|
|
<ul><li>This is optional, if you want the results to come out as they are in the table, just leave this section blank.</li></ul>
|
|
|
|
|
|
|
|
|
|
<h2>Edit Reports</h2>
|
|
|
|
|
|
|
|
|
|
<p>Custom reports can be edited in their entirety from the Saved Guided Reports page.</p>
|
|
|
|
|
|
|
|
|
|
<ul><li><em>Get there:</em> More > Reports > Guided Reports > Use Saved</li></ul>
|
|
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
|
<li>To edit a report click 'Edit SQL' beside the report</li>
|
|
|
|
|
<li>A page with editable fields will open so that you can change the title, notes and SQL related to the report</li>
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
<h2>Report from SQL</h2>
|
|
|
|
|
|
|
|
|
|
<p>In addition to the report wizard, you have the option to write your own queries using SQL. To find reports written by other Koha users, visit the Koha Wiki: <a href="http://wiki.koha-community.org/wiki/SQL_Reports_Library" target="_top">http://wiki.koha-community.org/wiki/SQL_Reports_Library</a>. You can also find your database structure in /installer/data/mysql/kohastructure.sql or online at: <a href="http://schema.koha-community.org/" target="_top">http://schema.koha-community.org</a>.</p>
|
|
|
|
|
|
|
|
|
|
<p>To add your query, click the link to 'Create from SQL' on the main reports module or the New button at the top of the Saved Reports page.</p>
|
|
|
|
|
|
|
|
|
|
<p>Fill in the form presented</p>
|
|
|
|
|
<ul>
|
|
|
|
|
<li>The 'Name' is what will appear on the Saved Reports page to help you identify the report later. It will also be searchable using the filters found the left of the Saved Reports page.</li>
|
|
|
|
|
<li>You can use the 'Report group' to organize your reports so that you can easily filter reports by groups. Report groups are set in the REPORT_GROUP authorized value category.</li>
|
|
|
|
|
<li>You can use 'Report subgroup' to further organize your reports so that you can easily filter reports by groups and subgroups. Report subgroups are set in the REPORT_SUBGROUP authorized value category.</li>
|
|
|
|
|
<li>'Report is public' should be left to the default of 'No' in most cases. A report can be made public if you intend to allow access to it through the JSON webservice interface. This is a system that can be used by developers to make custom presentations of the data from the report, for example displaying it using a graphing API. To learn more speak to your local developer.
|
|
|
|
|
<p>'Report is public' should be left to the default of 'No' in most cases. A report can be made public if you intend to allow access to it through the JSON webservice interface. This is a system that can be used by developers to make custom presentations of the data from the report, for example displaying it using a graphing API. To learn more speak to your local developer.</p>
|
|
|
|
|
<ul>
|
|
|
|
|
<li>A public report is accessible via a URL that looks like this: http://MYOPAC/cgi-bin/koha/svc/report?id=REPORTID</li>
|
|
|
|
|
</ul>
|
|
|
|
|
</li>
|
|
|
|
|
<li>'Notes' will also appear on the Saved Reports page, this can be used to provide more details about the report or tips on how to enter values when it runs</li>
|
|
|
|
|
<li>The type should always be 'Tabular' at this time since theother formats have not been implemented</li>
|
|
|
|
|
<li>In the 'SQL' box you will type or paste the SQL for the report</li>
|
|
|
|
|
<li>If you feel that your report might be too resource intensive you might want to consider using runtime parameters to your query. Runtime parameters basically make a filter appear before the report is run to save your system resources.There is a specific syntax that Koha will understand as 'ask for values when running the report'. The syntax is <<Question to ask|authorized_value>>.
|
|
|
|
|
<p><strong>Step 2:</strong> Choose a report type. For now, Tabular is the only option available.</p>
|
|
|
|
|
|
|
|
|
|
<p><strong>Step 3:</strong> Choose the fields you want in your report. You can select multiple fields and add them all at once by using CTRL+Click on each item you want to add before clicking the Add button.</p>
|
|
|
|
|
|
|
|
|
|
<p><strong>Step 4:</strong> Choose any limits you might want to apply to your report (such as item types or branches). If you don't want to apply any limits, simply click Next instead of making an option.</p>
|
|
|
|
|
|
|
|
|
|
<p><strong>Step 5:</strong> Perform math functions. If you don't want to do any calculations, simply click Next instead of making an option.</p>
|
|
|
|
|
|
|
|
|
|
<p><strong>Step 6:</strong> Choose data order. If you want the data to print out in the order it's found in the database, simply click Finish.</p>
|
|
|
|
|
|
|
|
|
|
<p>When you are finished you will be presented with the SQL generated by the report wizard. From here you can choose to save the report by clicking 'Save' or copy the SQL and make edits to it by hand.</p>
|
|
|
|
|
|
|
|
|
|
<p>If you choose to save the report you will be asked to name your report, sort it in to groups and subgroups and enter any notes regarding it.</p>
|
|
|
|
|
|
|
|
|
|
<p>Once your report is saved it will appear on the 'Use Saved' page with all other saved reports.</p>
|
|
|
|
|
|
|
|
|
|
<p>From here you can make edits, run the report, or schedule a time to have the report run. To find the report you created you can sort by any of the columns by clicking the on the column header (creation date is the best bet for finding the report you just added). You can also filter your results using the filter menu on the left or use the tabs to find reports based on your custom groups.</p>
|
|
|
|
|
|
|
|
|
|
<h3>Report from SQL</h3>
|
|
|
|
|
|
|
|
|
|
<p>In addition to the report wizard, you have the option to write your own queries using SQL. To find reports written by other Koha users, visit the Koha Wiki: <a href="http://wiki.koha-community.org/wiki/SQL_Reports_Library" target="blank">http://wiki.koha-community.org/wiki/SQL_Reports_Library</a>. You can also find your database structure in /installer/data/mysql/kohastructure.sql or online at: <a href="http://schema.koha-community.org" target="blank">http://schema.koha-community.org</a>.</p>
|
|
|
|
|
|
|
|
|
|
<p>To add your query, click the link to 'Create from SQL' on the main reports module or the 'New report' button at the top of the 'Saved reports' page.</p>
|
|
|
|
|
|
|
|
|
|
<p>Fill in the form presented</p>
|
|
|
|
|
<ul>
|
|
|
|
|
<li>The << and >> are just delimiters. You must put << at the beginning and >> at the end of your parameter</li>
|
|
|
|
|
<li>The 'Question to ask' will be displayed on the left of the string to enter.</li>
|
|
|
|
|
<li>The authorized_value can be omitted if not applicable. If it contains an authorized value category, or libraries or itemtype or categorycode, a list with the Koha authorized values will be displayed instead of a free field Note that you can have more than one parameter in a given SQL Note that entering nothing at run time won't probably work as you expect. It will be considered as "value empty" not as "ignore this parameter". For example entering nothing for : "title=<<Enter title>>" will display results with title='' (no title). If you want to have to have something not mandatory, use "title like <<Enter title>>" and enter a % at run time instead of nothing</li>
|
|
|
|
|
</ul>
|
|
|
|
|
<p>Examples:</p>
|
|
|
|
|
<li>The 'Name' is what will appear on the Saved Reports page to help you identify the report later. It will also be searchable using the filters found the left of the Saved Reports page.</li>
|
|
|
|
|
<li>You can use the 'Report group' to organize your reports so that you can easily filter reports by groups. Report groups are set in the REPORT_GROUP authorized value category or can be added on the fly when creating the report by choosing the 'or create' radio button.
|
|
|
|
|
<ul>
|
|
|
|
|
<li>SELECT surname, firstname<br />
|
|
|
|
|
FROM borrowers <br />
|
|
|
|
|
WHERE branchcode=<<Enter patrons library|branches>> AND surname like <<Enter filter for patron surname (% if none)>></li>
|
|
|
|
|
<li>SELECT * <br />
|
|
|
|
|
FROM items <br />
|
|
|
|
|
WHERE homebranch = <<Pick your library|branches>> AND barcode like <<Partial barcode value here>></li>
|
|
|
|
|
<li style="background-color: #ffe599;">Tip: If you're adding a report group on the fly, remember that you code should be fewer than 10 characters and should not include special characters or spaces.</li>
|
|
|
|
|
</ul>
|
|
|
|
|
</li>
|
|
|
|
|
<li>Tip: To generate a date picker calendar to the right of the field when running a report you can use the 'date' keyword like this: <<Enter Date|date>></li>
|
|
|
|
|
<li>Tip: You have to put "%" in a text box to 'leave it blank'. Otherwise, it literally looks for "" (empty string) as the value for the field.</li>
|
|
|
|
|
<li style="color: #990000">Important: In addition to using any authorized value code to generate a dropdown, you can use the following values as well: Libraries (branches), Item Types (itemtypes) and Patron Categories (categorycode). For example a library pull down would be generated like this <<Library|branches>></li>
|
|
|
|
|
<li>You can use 'Report subgroup' to further organize your reports so that you can easily filter reports by groups and subgroups. Report subgroups are set in the REPORT_SUBGROUP authorized value category or can be added on the fly when creating the report by choosing the 'or create' radio button.
|
|
|
|
|
<ul>
|
|
|
|
|
<li style="background-color: #ffe599;">Tip: If you're adding a report subgroup on the fly, remember that you code should be fewer than 10 characters and should not include special characters or spaces.</li>
|
|
|
|
|
</ul>
|
|
|
|
|
</li>
|
|
|
|
|
<li>'Report is public' should be left to the default of 'No' in most cases. A report can be made public if you intend to allow access to it through the JSON webservice interface. This is a system that can be used by developers to make custom presentations of the data from the report, for example displaying it using a graphing API. To learn more speak to your local developer.
|
|
|
|
|
<ul>
|
|
|
|
|
<li>A public report is accessible via a URL that looks like this: http://MYOPAC/cgi-bin/koha/svc/report?id=REPORTID</li>
|
|
|
|
|
</ul>
|
|
|
|
|
</li>
|
|
|
|
|
<li>'Notes' will also appear on the Saved Reports page, this can be used to provide more details about the report or tips on how to enter values when it runs</li>
|
|
|
|
|
<li>The type should always be 'Tabular' at this time since the other formats have not been implemented</li>
|
|
|
|
|
<li>In the 'SQL' box you will type or paste the SQL for the report</li>
|
|
|
|
|
<li>If you feel that your report might be too resource intensive you might want to consider using runtime parameters to your query. Runtime parameters basically make a filter appear before the report is run to save your system resources.There is a specific syntax that Koha will understand as 'ask for values when running the report'. The syntax is <<Question to ask authorized_value>>.
|
|
|
|
|
<ul>
|
|
|
|
|
<li>The << and >> are just delimiters. You must put << at the beginning and >> at the end of your parameter</li>
|
|
|
|
|
<li>The 'Question to ask' will be displayed on the left of the string to enter.</li>
|
|
|
|
|
<li>The authorized_value can be omitted if not applicable. If it contains an authorized value category, or branches or itemtype or categorycode, a list with the Koha authorized values will be displayed instead of a free field Note that you can have more than one parameter in a given SQL Note that entering nothing at run time won't probably work as you expect. It will be considered as "value empty" not as "ignore this parameter". For example entering nothing for : "title=<<Enter title>>" will display results with title='' (no title). If you want to have to have something not mandatory, use "title like <<Enter title>>" and enter a % at run time instead of nothing</li>
|
|
|
|
|
</ul>
|
|
|
|
|
</li>
|
|
|
|
|
<li>Examples:
|
|
|
|
|
<ul>
|
|
|
|
|
<li>SELECT surname,firstname FROM borrowers WHERE branchcode=<<Enter patrons library|branches>> AND surname like <<Enter filter for patron surname (% if none)>></li>
|
|
|
|
|
<li>SELECT * FROM items WHERE homebranch = <<Pick your branch|branches>> and barcode like <<Partial barcode value here>></li>
|
|
|
|
|
</ul>
|
|
|
|
|
</li>
|
|
|
|
|
<li style="background-color: #ffe599;">Tip: To generate a date picker calendar to the right of the field when running a report you can use the 'date' keyword like this: <<Enter Date|date>>
|
|
|
|
|
</li>
|
|
|
|
|
<li style="background-color: #ffe599;">Tip: You have to put "%" in a text box to 'leave it blank'. Otherwise, it literally looks for "" (empty string) as the value for the field.</li>
|
|
|
|
|
<li style="color: #990000;">Important: In addition to using any authorized value code to generate a dropdown, you can use the following values as well: Branches (branches), Item Types (itemtypes) and Patron Categories (categorycode). For example a branch pull down would be generated like this <<Branch|branches>></li>
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
<p>Note: There is a limit of 10,000 records put on SQL statements entered in Koha. To get around this you want to add 'LIMIT 100000' to the end of your SQL statement (or any other number above 10,000.</p>
|
|
|
|
|
<p><strong>Note</strong>: There is a limit of 10,000 records put on SQL statements entered in Koha. To get around this you want to add 'LIMIT 100000' to the end of your SQL statement (or any other number above 10,000.</p>
|
|
|
|
|
|
|
|
|
|
<p>Once everything is entered click the 'Save Report' button and you'll be presented with options to run it. Once a report is saved you do not have to recreate it you can simply find it on the Saved Reports page and run or edit it.</p>
|
|
|
|
|
|
|
|
|
|
<p><strong>Is there a repository for reports?</strong></p>
|
|
|
|
|
<h3>Duplicate Report</h3>
|
|
|
|
|
|
|
|
|
|
<p>There is a page on the Koha Wiki: <a href="http://wiki.koha-community.org/wiki/SQL_Reports_Library" target="_new">http://wiki.koha-community.org/wiki/SQL_Reports_Library</a> with reports written by Koha libraries around the world.</p>
|
|
|
|
|
<p>Reports can also be added by duplicating an existing report. Visit the 'Saved reports' page to see all of the reports listed on your system already.</p>
|
|
|
|
|
|
|
|
|
|
<p>NEKLS also has a great page (<a href="http://www.nexpresslibrary.org/training/reports-training/" target="_new">http://www.nexpresslibrary.org/training/reports-training/</a>) with a list of reports they have written.</p>
|
|
|
|
|
<p>To the right of every report there is a 'Duplicate' link in the 'Saved SQL' column. Click that 'Duplicate' link to use an existing report as the basis for your new report. That will populate the new report form with the existing SQL for easy editing and resaving.</p>
|
|
|
|
|
|
|
|
|
|
<h3>Edit Custom Reports</h3>
|
|
|
|
|
|
|
|
|
|
<p>Every report can be edited from the reports lists. To see the list of reports already stored in Koha, click 'Use Saved.'</p>
|
|
|
|
|
|
|
|
|
|
<p>To find the report you'd like to edit you can sort by any of the columns by clicking the on the column header. You can also filter your results using the filter menu on the left or use the tabs to find reports based on your custom groups.</p>
|
|
|
|
|
|
|
|
|
|
<p>From this list you can edit any custom report by clicking 'Edit' in the 'Saved SQL' column.</p>
|
|
|
|
|
|
|
|
|
|
<h3>Running Custom Reports</h3>
|
|
|
|
|
|
|
|
|
|
<p>Once custom reports are saved to Koha, you can run them by going to the Saved Reports page and clicking the 'Run' link to the right of the report.</p>
|
|
|
|
|
|
|
|
|
|
<p>When you report runs you will either be asked for some value or you will see the results right away</p>
|
|
|
|
|
|
|
|
|
|
<p>From the results you can choose to rerun the report by clicking 'Run report' at the top, edit the report by clicking the 'Edit' button or starting over and creating a new report by using the 'New' button. You can also download your results by choosing a file type at the bottom of the results next to the 'Download the report' label and clicking 'Download.'</p>
|
|
|
|
|
|
|
|
|
|
<p style="background-color: #ffe599;">Tip: A Comma Separated Text file is a CSV file and it can be opened by any spreadsheet application.</p>
|
|
|
|
|
|
|
|
|
|
<h3>DB table value for reports</h3>
|
|
|
|
|
|
|
|
|
|
<p><strong>Question:</strong> What do the codes in the accounttype field in the accountlines table stand for?</p>
|
|
|
|
|
|
|
|
|
|
<p><strong>Answer:</strong></p>
|
|
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
|
<li>A = Account management fee</li>
|
|
|
|
|
<li>C = Credit</li>
|
|
|
|
|
<li>F = Overdue fine</li>
|
|
|
|
|
<li>FOR = Forgiven</li>
|
|
|
|
|
<li>FU = Overdue, still acccruing</li>
|
|
|
|
|
<li>L = Lost item</li>
|
|
|
|
|
<li>LR = Lost item returned/refunded</li>
|
|
|
|
|
<li>M = Sundry</li>
|
|
|
|
|
<li>N = New card</li>
|
|
|
|
|
<li>PAY = Payment</li>
|
|
|
|
|
<li>W = Writeoff</li>
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
<p><strong>Question:</strong> What are the possible codes for the type field in the statistics table?</p>
|
|
|
|
|
|
|
|
|
|
<p><strong>Answer:</strong></p>
|
|
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
|
<li>localuse
|
|
|
|
|
<ul>
|
|
|
|
|
<li>Registers if an item that had been checked out to a statistics patron (category type = 'X') is returned</li>
|
|
|
|
|
</ul>
|
|
|
|
|
</li>
|
|
|
|
|
<li>issue</li>
|
|
|
|
|
<li>return</li>
|
|
|
|
|
<li>renew</li>
|
|
|
|
|
<li>writeoff</li>
|
|
|
|
|
<li>payment</li>
|
|
|
|
|
<li>CreditXXX
|
|
|
|
|
<ul>
|
|
|
|
|
<li>stores different types of fee credits, so a query to catch them all would include a clause like "type LIKE 'Credit%'"</li>
|
|
|
|
|
</ul>
|
|
|
|
|
</li>
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
<p><strong>Question</strong>: What are the possible codes for the found field in the reserves and old_reserves tables?</p>
|
|
|
|
|
|
|
|
|
|
<p><strong>Answer</strong>:</p>
|
|
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
|
<li>NULL: means the patron requested the 1st available, and we haven't chosen the item</li>
|
|
|
|
|
<li>T = Transit: the reserve is linked to an item but is in transit to the pickup branch</li>
|
|
|
|
|
<li>W =Waiting: the reserve is linked to an item, is at the pickup branch, and is waiting on the hold shelf</li>
|
|
|
|
|
<li>F = Finished: the reserve has been completed, and is done</li>
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
<p><strong>Question</strong>: What are the possible codes for the area field in the reports_dictionary table?</p>
|
|
|
|
|
|
|
|
|
|
<p><strong>Answer</strong>:</p>
|
|
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
|
<li>1 = Circulation</li>
|
|
|
|
|
<li>2 = Catalog</li>
|
|
|
|
|
<li>3 = Patrons</li>
|
|
|
|
|
<li>4 = Acquistions</li>
|
|
|
|
|
<li>5 = Accounts</li>
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
<p><strong>Question</strong>: What are the possible codes for the message_type field in the messages table?</p>
|
|
|
|
|
|
|
|
|
|
<p><strong>Answer</strong>:</p>
|
|
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
|
<li>L = For Librarians</li>
|
|
|
|
|
<li>B = For Patrons/Borrowers</li>
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
<p><strong>Question</strong>: What are the possible codes for the status field in the serial table"?</p>
|
|
|
|
|
|
|
|
|
|
<p><strong>Answer</strong>:</p>
|
|
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
|
<li>1 = Expected</li>
|
|
|
|
|
<li>2 = Arrived</li>
|
|
|
|
|
<li>3 = Late</li>
|
|
|
|
|
<li>4 = Missing</li>
|
|
|
|
|
<li>5 = Not Available</li>
|
|
|
|
|
<li>6 = Delete</li>
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
<p><strong>See the full documentation for Custom Reports in the <a href="http://manual.koha-community.org/3.10/en/reports.html#customreports">manual</a> (online).</strong></p>
|
|
|
|
|
|
|
|
|
|