We were able to fix this at C/W MARS by including the following links in the combcirc data source:
<link field="usr_home_ou" reltype="has_a" key="id" map="" class="aou"/> <link field="usr_profile" reltype="has_a" key="id" map="" class="pgt"/>
In the end the entire fm_IDL entry looked like this:
<class id="combcirc" controller="open-ils.cstore" oils_obj:fieldmapper="action::all_circulation" oils_persist:tablename="action.all_circulation" reporter:core="true" reporter:label="Combined Aged and Active Circulations" oils_persist:readonly="true"> <fields oils_persist:primary="id" oils_persist:sequence="money.billable_xact_id_seq"> <field reporter:label="Check In Library" name="checkin_lib" reporter:datatype="org_unit"/> <field reporter:label="Check In Staff" name="checkin_staff" reporter:datatype="link"/> <field reporter:label="Check In Date/Time" name="checkin_time" reporter:datatype="timestamp"/> <field reporter:label="Circulating Library" name="circ_lib" reporter:datatype="org_unit"/> <field reporter:label="Circulating Staff" name="circ_staff" reporter:datatype="link"/> <field reporter:label="Desk Renewal" name="desk_renewal" reporter:datatype="bool"/> <field reporter:label="Due Date/Time" name="due_date" reporter:datatype="timestamp"/> <field reporter:label="Circulation Duration" name="duration" reporter:datatype="interval"/> <field reporter:label="Circ Duration Rule" name="duration_rule" reporter:datatype="link"/> <field reporter:label="Fine Interval" name="fine_interval" reporter:datatype="interval"/> <field reporter:label="Circ ID" name="id" reporter:datatype="id" /> <field reporter:label="Max Fine Amount" name="max_fine" reporter:datatype="money" /> <field reporter:label="Max Fine Rule" name="max_fine_rule" reporter:datatype="link"/> <field reporter:label="OPAC Renewal" name="opac_renewal" reporter:datatype="bool"/> <field reporter:label="Phone Renewal" name="phone_renewal" reporter:datatype="bool"/> <field reporter:label="Recurring Fine Amount" name="recurring_fine" reporter:datatype="money" /> <field reporter:label="Recurring Fine Rule" name="recurring_fine_rule" reporter:datatype="link"/> <field reporter:label="Remaining Renewals" name="renewal_remaining" reporter:datatype="int" /> <field reporter:label="Grace Period" name="grace_period" reporter:datatype="interval" /> <field reporter:label="Fine Stop Reason" name="stop_fines" reporter:datatype="text"/> <field reporter:label="Fine Stop Date/Time" name="stop_fines_time" reporter:datatype="timestamp"/> <field reporter:label="Circulating Item" name="target_copy" reporter:datatype="link"/> <field reporter:label="Patron ZIP" name="usr_post_code" reporter:datatype="text"/> <field reporter:label="Transaction Finish Date/Time" name="xact_finish" reporter:datatype="timestamp" /> <field reporter:label="Checkout Date/Time" name="xact_start" reporter:datatype="timestamp" /> <field reporter:label="Record Creation Date/Time" name="create_time" reporter:datatype="timestamp" /> <field reporter:label="Transaction Billings" name="billings" oils_persist:virtual="true" reporter:datatype="link"/> <field reporter:label="Transaction Payments" name="payments" oils_persist:virtual="true" reporter:datatype="link"/> <field reporter:label="Base Transaction" name="billable_transaction" oils_persist:virtual="true" reporter:datatype="link"/> <field reporter:label="Workstation" name="workstation" reporter:datatype="link"/> <field reporter:label="Circulation Type" name="circ_type" oils_persist:virtual="true" reporter:datatype="text"/> <field reporter:label="Billing Totals" name="billing_total" oils_persist:virtual="true" reporter:datatype="money"/> <field reporter:label="Payment Totals" name="payment_total" oils_persist:virtual="true" reporter:datatype="money"/> <field reporter:label="Patron Home Library" name="usr_home_ou" reporter:datatype="link"/> <field reporter:label="Patron Profile Group" name="usr_profile" reporter:datatype="link"/> <field reporter:label="Patron Birth Year" name="usr_birth_year" reporter:datatype="int"/> <field reporter:label="Call Number" name="copy_call_number" reporter:datatype="link"/> <field reporter:label="Shelving Location" name="copy_location" reporter:datatype="link"/> <field reporter:label="Copy Owning Library" name="copy_owning_lib" reporter:datatype="link"/> <field reporter:label="Copy Circulating Library" name="copy_circ_lib" reporter:datatype="link"/> <field reporter:label="Bib Record" name="copy_bib_record" reporter:datatype="link"/> <field reporter:label="Archived Patron Stat-Cat Entries" name="aaactsc_entries" oils_persist:virtual="true" reporter:datatype="link"/> <field reporter:label="Archived Copy Stat-Cat Entries" name="aaasc_entries" oils_persist:virtual="true" reporter:datatype="link"/> </fields> <links> <link field="billable_transaction" reltype="might_have" key="id" map="" class="mbt"/> <link field="circ_staff" reltype="has_a" key="id" map="" class="au"/> <link field="checkin_lib" reltype="has_a" key="id" map="" class="aou"/> <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/> <link field="checkin_staff" reltype="has_a" key="id" map="" class="au"/> <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/> <link field="payments" reltype="has_many" key="xact" map="" class="mp"/> <link field="billings" reltype="has_many" key="xact" map="" class="mb"/> <link field="duration_rule" reltype="has_a" key="name" map="" class="crcd"/> <link field="max_fine_rule" reltype="has_a" key="name" map="" class="crmf"/> <link field="recurring_fine_rule" reltype="has_a" key="name" map="" class="crrf"/> <link field="circ_type" reltype="might_have" key="id" map="" class="rcirct"/> <link field="billing_total" reltype="might_have" key="xact" map="" class="rxbt"/> <link field="payment_total" reltype="might_have" key="xact" map="" class="rxpt"/> <link field="copy_call_number" reltype="has_a" key="id" map="" class="acn"/> <link field="copy_location" reltype="has_a" key="id" map="" class="acpl"/> <link field="copy_owning_lib" reltype="has_a" key="id" map="" class="aou"/> <link field="copy_circ_lib" reltype="has_a" key="id" map="" class="aou"/> <link field="workstation" reltype="has_a" key="id" map="" class="aws"/> <link field="copy_bib_record" reltype="has_a" key="id" map="" class="bre"/> <link field="aaactsc_entries" reltype="has_many" key="xact" map="" class="aaactsc"/> <link field="aaasc_entries" reltype="has_many" key="xact" map="" class="aaasc"/> <link field="usr_home_ou" reltype="has_a" key="id" map="" class="aou"/> <link field="usr_profile" reltype="has_a" key="id" map="" class="pgt"/> </links> </class>
We were able to fix this at C/W MARS by including the following links in the combcirc data source:
<link field="usr_home_ou" reltype="has_a" key="id" map="" class="aou"/>
<link field="usr_profile" reltype="has_a" key="id" map="" class="pgt"/>
In the end the entire fm_IDL entry looked like this:
<class id="combcirc" controller= "open-ils. cstore" oils_obj: fieldmapper= "action: :all_circulatio n" oils_persist: tablename= "action. all_circulation " reporter: core="true" reporter: label=" Combined Aged and Active Circulations" oils_persist: readonly= "true"> primary= "id" oils_persist: sequence= "money. billable_ xact_id_ seq"> label=" Check In Library" name="checkin_lib" reporter: datatype= "org_unit" /> label=" Check In Staff" name="checkin_ staff" reporter: datatype= "link"/ > label=" Check In Date/Time" name="checkin_time" reporter: datatype= "timestamp" /> label=" Circulating Library" name="circ_lib" reporter: datatype= "org_unit" /> label=" Circulating Staff" name="circ_staff" reporter: datatype= "link"/ > label=" Desk Renewal" name="desk_renewal" reporter: datatype= "bool"/ > datatype= "timestamp" /> label=" Circulation Duration" name="duration" reporter: datatype= "interval" /> label=" Circ Duration Rule" name="duration_ rule" reporter: datatype= "link"/ > label=" Fine Interval" name="fine_ interval" reporter: datatype= "interval" /> label=" Circ ID" name="id" reporter: datatype= "id" /> datatype= "money" /> fine_rule" reporter: datatype= "link"/ > label=" OPAC Renewal" name="opac_renewal" reporter: datatype= "bool"/ > label=" Phone Renewal" name="phone_ renewal" reporter: datatype= "bool"/ > label=" Recurring Fine Amount" name="recurring _fine" reporter: datatype= "money" /> label=" Recurring Fine Rule" name="recurring _fine_rule" reporter: datatype= "link"/ > label=" Remaining Renewals" name="renewal_ remaining" reporter: datatype= "int" /> label=" Grace Period" name="grace_period" reporter: datatype= "interval" /> label=" Fine Stop Reason" name="stop_fines" reporter: datatype= "text"/ > label=" Fine Stop Date/Time" name="stop_ fines_time" reporter: datatype= "timestamp" /> label=" Circulating Item" name="target_copy" reporter: datatype= "link"/ > label=" Patron ZIP" name="usr_ post_code" reporter: datatype= "text"/ > label=" Transaction Finish Date/Time" name="xact_finish" reporter: datatype= "timestamp" /> label=" Checkout Date/Time" name="xact_start" reporter: datatype= "timestamp" /> label=" Record Creation Date/Time" name="create_time" reporter: datatype= "timestamp" /> label=" Transaction Billings" name="billings" oils_persist: virtual= "true" reporter: datatype= "link"/ > label=" Transaction Payments" name="payments" oils_persist: virtual= "true" reporter: datatype= "link"/ > label=" Base Transaction" name="billable_ transaction" oils_persist: virtual= "true" reporter: datatype= "link"/ > label=" Workstation" name="workstation" reporter: datatype= "link"/ > label=" Circulation Type" name="circ_type" oils_persist: virtual= "true" reporter: datatype= "text"/ > label=" Billing Totals" name="billing_ total" oils_persist: virtual= "true" reporter: datatype= "money" /> label=" Payment Totals" name="payment_ total" oils_persist: virtual= "true" reporter: datatype= "money" /> label=" Patron Home Library" name="usr_home_ou" reporter: datatype= "link"/ > label=" Patron Profile Group" name="usr_profile" reporter: datatype= "link"/ > label=" Patron Birth Year" name="usr_ birth_year" reporter: datatype= "int"/> label=" Call Number" name="copy_ call_number" reporter: datatype= "link"/ > label=" Shelving Location" name="copy_ location" reporter: datatype= "link"/ > label=" Copy Owning Library" name="copy_ owning_ lib" reporter: datatype= "link"/ > label=" Copy Circulating Library" name="copy_ circ_lib" reporter: datatype= "link"/ > bib_record" reporter: datatype= "link"/ > label=" Archived Patron Stat-Cat Entries" name="aaactsc_ entries" oils_persist: virtual= "true" reporter: datatype= "link"/ > label=" Archived Copy Stat-Cat Entries" name="aaasc_ entries" oils_persist: virtual= "true" reporter: datatype= "link"/ > billable_ transaction" reltype= "might_ have" key="id" map="" class="mbt"/> checkin_ staff" reltype="has_a" key="id" map="" class="au"/> duration_ rule" reltype="has_a" key="name" map="" class="crcd"/> max_fine_ rule" reltype="has_a" key="name" map="" class="crmf"/> recurring_ fine_rule" reltype="has_a" key="name" map="" class="crrf"/> "might_ have" key="id" map="" class="rcirct"/> billing_ total" reltype= "might_ have" key="xact" map="" class="rxbt"/> payment_ total" reltype= "might_ have" key="xact" map="" class="rxpt"/> copy_call_ number" reltype="has_a" key="id" map="" class="acn"/> copy_location" reltype="has_a" key="id" map="" class="acpl"/> copy_owning_ lib" reltype="has_a" key="id" map="" class="aou"/> copy_circ_ lib" reltype="has_a" key="id" map="" class="aou"/> copy_bib_ record" reltype="has_a" key="id" map="" class="bre"/> aaactsc_ entries" reltype="has_many" key="xact" map="" class="aaactsc"/> aaasc_entries" reltype="has_many" key="xact" map="" class="aaasc"/>
<fields oils_persist:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:label="Due Date/Time" name="due_date" reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:label="Max Fine Amount" name="max_fine" reporter:
<field reporter:label="Max Fine Rule" name="max_
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:
<field reporter:label="Bib Record" name="copy_
<field reporter:
<field reporter:
</fields>
<links>
<link field="
<link field="circ_staff" reltype="has_a" key="id" map="" class="au"/>
<link field="checkin_lib" reltype="has_a" key="id" map="" class="aou"/>
<link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
<link field="
<link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
<link field="payments" reltype="has_many" key="xact" map="" class="mp"/>
<link field="billings" reltype="has_many" key="xact" map="" class="mb"/>
<link field="
<link field="
<link field="
<link field="circ_type" reltype=
<link field="
<link field="
<link field="
<link field="
<link field="
<link field="
<link field="workstation" reltype="has_a" key="id" map="" class="aws"/>
<link field="
<link field="
<link field="
<link field="usr_home_ou" reltype="has_a" key="id" map="" class="aou"/>
<link field="usr_profile" reltype="has_a" key="id" map="" class="pgt"/>
</links>
</class>