Are you trying to create an entity to your main project or to your module?
you can use the following CLI command to add a new module to your existing solution.
abp add-module ProductManagement --new --solution C:\YourSolutionPath --add-to-solution-file
https://docs.abp.io/en/abp/latest/CLI#options-3
are you using some source control platform something like GitHub? if so commit your changes before generating the entity and you can easily see the difference. this can allow you to pick your custom code to the new one
@toan.nguyen are you also using Devart Oracle provider or the official Oracle provider?
@jon replace this with the below. it'll solve that.
$(function () {
var l = abp.localization.getResource("%%only-project-name%%");
%%<if:IsTieredArchitecture>%%var %%entity-name-camelcase%%Service = window.%%solution-namespace-camelcase%%.controllers.%%entity-namespace-camelcase%%.%%entity-name-camelcase%%;%%</if:IsTieredArchitecture>%%
%%<if:IsNonTieredArchitecture>%%var %%entity-name-camelcase%%Service = window.%%solution-namespace-camelcase%%.%%entity-namespace-camelcase%%.%%entity-name-camelcase%%;%%</if:IsNonTieredArchitecture>%%
%%navigation-property-lookup-common-methods%%
%%navigation-property-lookup-methods%%
var createModal = new abp.ModalManager({
viewUrl: abp.appPath + "%%module-name-slash-postfix%%%%entity-name-plural%%/CreateModal",
scriptUrl: "/Pages/%%module-name-slash-postfix%%%%entity-name-plural%%/createModal.js",
modalClass: "%%entity-name-camelcase%%Create"
});
var editModal = new abp.ModalManager({
viewUrl: abp.appPath + "%%module-name-slash-postfix%%%%entity-name-plural%%/EditModal",
scriptUrl: "/Pages/%%module-name-slash-postfix%%%%entity-name-plural%%/editModal.js",
modalClass: "%%entity-name-camelcase%%Edit"
});
var getFilter = function() {
return {
filterText: $("#FilterText").val(),
%%index-js-filtering-fields%%
};
};
var dataTable = $("#%%entity-name-plural%%Table").DataTable(abp.libs.datatables.normalizeConfiguration({
processing: true,
serverSide: true,
paging: true,
searching: false,
scrollX: true,
autoWidth: false,
scrollCollapse: true,
order: [%%order-%%],
ajax: abp.libs.datatables.createAjax(%%entity-name-camelcase%%Service.getList, getFilter),
columnDefs: [
{
rowAction: {
items:
[
{
text: l("Edit"),
visible: abp.auth.isGranted('%%only-project-name%%.%%entity-name-plural%%.Edit'),
action: function (data) {
editModal.open({
id: data.record%%add-entity-name-camelcase%%.id
});
}
},
{
text: l("Delete"),
visible: abp.auth.isGranted('%%only-project-name%%.%%entity-name-plural%%.Delete'),
confirmMessage: function () {
return l("DeleteConfirmationMessage");
},
action: function (data) {
%%entity-name-camelcase%%Service.delete(data.record%%add-entity-name-camelcase%%.id)
.then(function () {
abp.notify.info(l("SuccessfullyDeleted"));
dataTable.ajax.reload();
});
}
}
]
}
},
%%index-js-TableProperties%%%%table-navigation-property-fields%%
]
}));
createModal.onResult(function () {
dataTable.ajax.reload();
});
editModal.onResult(function () {
dataTable.ajax.reload();
});
$("#New%%entity-name%%Button").click(function (e) {
e.preventDefault();
createModal.open();
});
$("#SearchForm").submit(function (e) {
e.preventDefault();
dataTable.ajax.reload();
});
$('#AdvancedFilterSectionToggler').on('click', function (e) {
$('#AdvancedFilterSection').toggle();
});
$('#AdvancedFilterSection').on('keypress', function (e) {
if (e.which === 13) {
dataTable.ajax.reload();
}
});
$('#AdvancedFilterSection select').change(function() {
dataTable.ajax.reload();
});
});
hi jon, yes it would be great if Suite will keep your changes. this is a task on our milestone. this is hard to implement because it's not always replacing a file with a newer one but sometimes modifying an existing class. (Forexample Suite changes some information in DbContext classes.) So this is a known drawback and we'll try to cover this gap.
@bhyatz can you create a new solution and test this issue on the new solution (v4.2.1) so we'll understand if you miss a migration step while upgrading from v3x to v4x