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
Post a Comment