Base solution for your next web application
Starts in:
01 DAYS
01 HRS
01 MIN
01 SEC

Activities of "slamj1"

Thanks @ismcagdas

Additional information from my testing:

Disabling the Backgound job system entirely using IsJobExecutionEnabled=false, stops the issue described above, so it's very likely something was introduced since 13.1.1 that affects the Background job processing / database connection use.

Thanks, Sam.

Thanks @ismcagdas, I just simply fixed inline.

@ismcagdas, good stuff, cheers!

Hi @mmukkara, you've closed the reader on benefitOption.BenefitOptionPlans by using ToList(), however it looks to me like the reader on benefitOption may still be open on the same command once you reach the foreach loop.

This may be causing the problem, even though you're iterating through BenefitOptionOutputDto.BenefitOptionPlans.

Thanks for the suggestions @ismcagdas. Although we have everything working, I'll have a look at https://valor-software.com/ngx-bootstrap/#/accordion

Answer

Hi @mdframe, we use the tables rowexpansion feature on the frontend. There are a couple of tricky parts on the angular side. Below is a sample client-side abridged code with the key parts:

 <p-table #dataTable
                             (onLazyLoad)="getSupplementalMaintenanceList($event)"
                             [value]="primengTableHelper.records"
                             dataKey="supplementalMaintenanceList.id"  
                             rows="{{primengTableHelper.defaultRecordsCountPerPage}}"
                             [paginator]="false"
                             [lazy]="true"
                             [scrollable]="true"
                             ScrollWidth="100%"
                             [responsive]="primengTableHelper.isResponsive"
                             [resizableColumns]="primengTableHelper.resizableColumns">
                             .
                             .
                             .
              <ng-template pTemplate="body" let-record="$implicit" let-rowData let-expanded="expanded">
                            <tr>
                                <td style="width: 3em">
                                    <div>
                                        <a href="#" [pRowToggler]="rowData">
                                            <i [ngClass]="expanded ? 'pi pi-chevron-down' : 'pi pi-chevron-right'"></i>
                                        </a>
                                    </div>
                                </td>
                                .
                                .
                                .
                <ng-template pTemplate="rowexpansion" let-record let-rowData>
                            <div class="primeng-datatable-container">
                                <td style="width: 3em"></td>
                                <td colspan="6">
                                    <span>
                                        <supplementalMaintenanceListDetail></supplementalMaintenanceListDetail>
                                    </span>
                                </td>
                            </div>
                        </ng-template>
     </p-table>    
     

And the .ts file for the parent will have the child defined as a component:

        @ViewChild('supplementalMaintenanceListDetail') supplementalMaintenanceListDetail:              SupplementalMaintenanceListDetailComponent;
     

The important parts are the dataKey="supplementalMaintenanceList.id" and the <ng-template pTemplate="rowexpansion" let-record let-rowData>. The dataKey will get passed to the child component when you expand the row.

Notice the <supplementalMaintenanceListDetail></supplementalMaintenanceListDetail>? That is the child table bundled as an angular component. It receives the parent id.

That's about all you have to do on the client side - fairly basic.

As far as the server side, you don't need to do anything special are far as the basic CRUD operations are concerned. The parent will use it's service, while the child will use it's own. The child will of course need to have the parent ID filled in on it's entity member in order to perform the CRUD operations.

Hope that helps. Sam.

Let me put something together for you shortly.

Answer

Hi @klawsuc, Turbo Table is being used in ANZ currently, at least as of V 6.0. It's being used in Roles, Tenants, Users etc. p-table is TurboTable I beleive.

Hi @mdframe, I've currently implemented NServiceBus for this. It may be more than you require but NSB is a fully distributed enterprise service bus and can use MSMQ + distributed transactions. It's a dual source model, but the commercial cost (25.00 per node/month) beats most any other vendors' products for ROI.

Showing 1 to 10 of 15 entries