Custom web resource create d365


 




HTML code

<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Styled Table with Loader</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
    <script type="text/javascript" src="ClientGlobalContext.js.aspx"></script>
    <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
    <style>
        table#ComCareAlertsTable, body {
            font-family: "Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", sans-serif;
            -webkit-font-smoothing: antialiased;
            font-size: 14px;
            font-weight: 600;
            color: rgb(50, 49, 48);
            overflow-wrap: break-word;
            font-style: normal;
            line-height: normal;
        }

        table#ComCareAlertsTable {
            width: 100%;
            border-collapse: collapse;
        }

            table#ComCareAlertsTable th {
                background-color: gray;
                color: white;
                padding: 10px;
                border: 1px solid #ddd;
                text-align: left;
            }

            table#ComCareAlertsTable td {
                padding: 10px;
                border: 1px solid #ddd;
            }

            table#ComCareAlertsTable tr:hover {
                background-color: lightgray;
            }

        /* Loader styles */
        .loader {
            border: 6px solid #f3f3f3;
            border-radius: 50%;
            border-top: 6px solid gray;
            width: 40px;
            height: 40px;
            animation: spin 1s linear infinite;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }

        @keyframes spin {
            0% {
                transform: rotate(0deg);
            }

            100% {
                transform: rotate(360deg);
            }
        }
    </style>
    <meta>
    <meta>
    <meta>
    <meta>
</head>
<body id="divbody" style="overflow-wrap: break-word;" onfocusout="parent.setEmailRange();">

    <!-- Loader -->
    <div class="loader" id="loader"></div>

    <script>
        $(document).ready(function () {
            LoadFundInstallmentTable();
        });

        function LoadFundInstallmentTable() {
            debugger;
            var fundId = Xrm.Page.data.entity.getId().replace("{", "").replace("}", "");
            // Show loader
            $('#loader').show();

            if (fundId != "" && fundId != null) {

                var fetchXml = "<fetch aggregate='true'>" +
                    "<entity name = 'ecl_fundinstallment'>" +
                    "<attribute name='ecl_year' alias='status' groupby='true' />" +
                    "<attribute name='ecl_installment' alias='sum' aggregate='sum' />" +
                    "<filter type='and'>" +
                    "<condition attribute='ecl_fund' operator='eq' uitype='ecl_fund' value='" + fundId + "' />" +
                        "</filter>" +
                    "</entity>" +
                    "</fetch>";

                var fetchXML = "?fetchXml=" + encodeURIComponent(fetchXml);

                var evrVar = Xrm.WebApi.retrieveMultipleRecords('ecl_fundinstallment', fetchXML).then(function success(evrVarRec) {
                    debugger;
                    if (evrVarRec != null && evrVarRec.entities != null && evrVarRec.entities.length > 0) {
                        $("#divbody").append("<table id='ComCareAlertsTable'> <thead><tr>  <th>Year</th><th>Total installment</th></tr></thead><tbody></tbody></table>");
                        for (var i = 0; i < evrVarRec.entities.length; i++) {
                            $("#ComCareAlertsTable tbody").append("<tr> <td>" + evrVarRec.entities[i]["status"] + "</td><td>" + evrVarRec.entities[i]["sum"] + "</td></tr>");
                        }
                    }
                    $('#loader').hide();
                });
            }
        }
    </script>
</body>
</html>



Comments

Popular posts from this blog

Power Automate compose vs variable

Update record when checkbox checked using JavaScript and save d365

Power pages custom button add in gried