This commit is contained in:
2022-03-23 00:50:44 +00:00
parent 8e58408113
commit 30c51f258f
7 changed files with 85 additions and 31 deletions

View File

@@ -2,12 +2,14 @@
check scotts issue with iis, where did he likely go wrong what is he saying about localhost vs domain etc
docs - Joyce is doing this already and will get back to me with changes
look into inserting numbers in steps in manual so we can refer to the number and say did you do number 4 or whatever the fuck.
Also image see where to put more images so people aren't confused
Import feature
test recent code change for "importable" attribute back and front then test the items to see if they work
hasn't been tested in a while, confirm what works and what doesn't, remove anything that doesn't work, look at an import path for inventory
most important to test in order are:
Customer, vendor, parts
All workorder and sub items should be removed from import, it doesn't make sense to import work orders here as far as I can tell, lock down this list
to only the essential, working items for now.
We may need a full blown inventory import feature of it's own, perhaps an item on the list that opens a different set of features in the form?

View File

@@ -123,7 +123,7 @@ dotnet --list-runtimes
### 4\. AyaNova server installation
Once you have ensured the two requirements above are installed and available, download and run the AyaNova network installer: [https://www.ayanova.com/download/ayanova-windows-x64-lan-setup.exe](https://www.ayanova.com/download/ayanova-windows-x64-lan-setup.exe).
Once you have ensured the three requirements above are installed and available, download and run the AyaNova network installer: [https://www.ayanova.com/download/ayanova-windows-x64-lan-setup.exe](https://www.ayanova.com/download/ayanova-windows-x64-lan-setup.exe).
**IMPORTANT**: You MUST UNCHECK the option 'Start AyaNova server when Windows starts'
@@ -157,7 +157,7 @@ The AyaNova server **must** be configured before it will be able to start proper
Configuration is done by editing the `config.json` file that has been installed to the `c:\Program Files\ayanova\` folder.
Run NotePad as Administrator to be able to edit and save in the program files folder by right clicking on the Notepad icon in the start menu, select *More* and *Run as administrator*:
Run NotePad as Administrator to be able to edit and save in the program files folder by right clicking on the Notepad icon in the start menu, select _More_ and _Run as administrator_:
![run notepad as administrator](img/ops-install-windows-run-notepad-as-administrator.png)
@@ -192,7 +192,10 @@ The [AYANOVA_DB_CONNECTION](ops-config-db.md) property must be edited and where
EDIT ONLY IF NEEDED:
The [AYANOVA_BACKUP_PG_DUMP_PATH](ops-config-backup-pgdump-path.md) property specifies the path to the PostgreSQL database backup utility `pg_dump` if AyaNova server will be doing the [automatic daily backups](ops-form-backup.md). If this utility is already in the path then you can remove this configuration setting entirely, otherwise it should be set to the location for your installed version of PostgreSQL's bin folder or wherever `pg_dump` is located. If you already have a backup solution in place for your PostgreSQL databases then there is no need to use this setting.
The [AYANOVA_BACKUP_PG_DUMP_PATH](ops-config-backup-pgdump-path.md) property specifies the path to the PostgreSQL database backup utility `pg_dump` if AyaNova server will be doing the [automatic daily backups](ops-form-backup.md).
A. if AyaNova server will be doing the automatic daily backups using AyaNova's Backup feature, confirm this path stated matches the path to YOUR PostgreSQL database backup utility pg_dump
B. otherwise, If you already have a backup solution in place for your PostgreSQL databases AND WILL NOT BE USING AYANOVA'S Backup feature, remove this
OPTIONAL EDIT:

View File

@@ -91,7 +91,7 @@ The AyaNova server **must** be configured before it will be able to start proper
Configuration is done by editing the `config.json` file that has been installed to the `c:\Program Files\ayanova\` folder.
Run NotePad as Administrator to be able to edit and save in the program files folder by right clicking on the Notepad icon in the start menu, select *More* and *Run as administrator*:
Run NotePad as Administrator to be able to edit and save in the program files folder by right clicking on the Notepad icon in the start menu, select _More_ and _Run as administrator_:
![run notepad as administrator](img/ops-install-windows-run-notepad-as-administrator.png)
@@ -126,7 +126,10 @@ The [AYANOVA_DB_CONNECTION](ops-config-db.md) property must be edited and where
EDIT ONLY IF NEEDED:
The [AYANOVA_BACKUP_PG_DUMP_PATH](ops-config-backup-pgdump-path.md) property specifies the path to the PostgreSQL database backup utility `pg_dump` if AyaNova server will be doing the [automatic daily backups](ops-form-backup.md). If this utility is already in the path then you can remove this configuration setting entirely, otherwise it should be set to the location for your installed version of PostgreSQL's bin folder or wherever `pg_dump` is located. If you already have a backup solution in place for your PostgreSQL databases then there is no need to use this setting.
The [AYANOVA_BACKUP_PG_DUMP_PATH](ops-config-backup-pgdump-path.md) property specifies the path to the PostgreSQL database backup utility `pg_dump` if AyaNova server will be doing the [automatic daily backups](ops-form-backup.md).
A. if AyaNova server will be doing the automatic daily backups using AyaNova's Backup feature, confirm this path stated matches the path to YOUR PostgreSQL database backup utility pg_dump
B. otherwise, If you already have a backup solution in place for your PostgreSQL databases AND WILL NOT BE USING AYANOVA'S Backup feature, remove this
OPTIONAL EDIT:

View File

@@ -63,7 +63,7 @@ IF the ayanova-launcher application does NOT automatically start after the setup
![SCREENSHOT OF WEBPAGE LOGIN](img/ops-install-ayanovaloginpage.png)
6\. The next steps would now be to login, request or install a license and if are trying out AyaNova for the first time follow the evaluation trial guide.
6\. Next steps
## Starting and stopping AyaNova server

View File

@@ -81,6 +81,7 @@ namespace AyaNova.Api.Controllers
ret.Add(new KeyValuePair<string, string>("coreview", "All Core AyaNova business object types current user is allowed to view"));
ret.Add(new KeyValuePair<string, string>("coreedit", "All Core AyaNova business object types current user is allowed to edit"));
ret.Add(new KeyValuePair<string, string>("reportable", "All AyaNova business object types that are reportable"));
ret.Add(new KeyValuePair<string, string>("importable", "All AyaNova business object types that are importable"));
ret.Add(new KeyValuePair<string, string>(StringUtil.TrimTypeName(typeof(UiFieldDataType).ToString()), "Types of data used in AyaNova for display and formatting UI purposes"));
ret.Add(new KeyValuePair<string, string>(StringUtil.TrimTypeName(typeof(NotifyEventType).ToString()), "Notification event types"));
ret.Add(new KeyValuePair<string, string>(StringUtil.TrimTypeName(typeof(NotifyDeliveryMethod).ToString()), "Notification delivery methods"));
@@ -181,6 +182,36 @@ namespace AyaNova.Api.Controllers
ReturnList.Add(new NameIdItem() { Name = name, Id = (long)t });
}
}
} else if (keyNameInLowerCase == "importable")
{
//importable biz objects for administration -> import selection
var values = Enum.GetValues(typeof(AyaType));
foreach (AyaType t in values)
{
if (t.HasAttribute(typeof(ImportableBizObjectAttribute)))
{
TranslationKeysToFetch.Add(t.ToString());
}
}
var LT = await TranslationBiz.GetSubsetStaticAsync(TranslationKeysToFetch, translationId);
foreach (AyaType t in values)
{
if (t.HasAttribute(typeof(ImportableBizObjectAttribute)))
{
var tName = t.ToString();
string name = string.Empty;
if (LT.ContainsKey(tName))
{
name = LT[tName];
}
else
{
name = tName;
}
ReturnList.Add(new NameIdItem() { Name = name, Id = (long)t });
}
}
}
else if (keyNameInLowerCase == "coreview")//all core objects user can read
{

View File

@@ -24,13 +24,13 @@ namespace AyaNova.Biz
NoType = 0,
Global = 1,
FormUserOptions = 2,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
User = 3,
ServerState = 4,
License = 5,
LogFile = 6,
PickListTemplate = 7,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
Customer = 8,
ServerJob = 9,
[CoreBizObject, ReportableBizObject]
@@ -39,14 +39,14 @@ namespace AyaNova.Biz
ServerMetrics = 12,
Translation = 13,
UserOptions = 14,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
HeadOffice = 15,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
LoanUnit = 16,
FileAttachment = 17,
DataListSavedFilter = 18,
FormCustom = 19,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
Part = 20,
[CoreBizObject, ReportableBizObject]
PM = 21,
@@ -56,7 +56,7 @@ namespace AyaNova.Biz
QuoteItemExpense = 23,
[CoreBizObject, ReportableBizObject]
QuoteItemLabor = 24,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
Project = 25,
[CoreBizObject, ReportableBizObject]
PurchaseOrder = 26,
@@ -68,11 +68,11 @@ namespace AyaNova.Biz
QuoteItemLoan = 29,
[CoreBizObject, ReportableBizObject]
QuoteItemPart = 30,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
Unit = 31,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
UnitModel = 32,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
Vendor = 33,
//--- WorkOrder
[CoreBizObject, ReportableBizObject]
@@ -107,11 +107,11 @@ namespace AyaNova.Biz
Backup = 49,
Notification = 50,
NotifySubscription = 51,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
Reminder = 52,
[ReportableBizObject]
UnitMeterReading = 53,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
CustomerServiceRequest = 54,
// ServiceBank = 55,
OpsNotificationSettings = 56,
@@ -119,19 +119,19 @@ namespace AyaNova.Biz
DashboardView = 58,
[CoreBizObject, ReportableBizObject]
CustomerNote = 59,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
Memo = 60,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
Review = 61,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
ServiceRate = 62,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
TravelRate = 63,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
TaxCode = 64,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
PartAssembly = 65,
[CoreBizObject, ReportableBizObject]
[CoreBizObject, ReportableBizObject, ImportableBizObject]
PartWarehouse = 66,
[ReportableBizObject]
PartInventory = 67,
@@ -139,7 +139,7 @@ namespace AyaNova.Biz
PartInventoryRestock = 69,//for list only, synthetic object
PartInventoryRequest = 70,//for list only, synthetic object
WorkOrderStatus = 71,
[ReportableBizObject]
[ReportableBizObject, ImportableBizObject]
TaskGroup = 72,
[CoreBizObject, ReportableBizObject]
WorkOrderItemOutsideService = 73,

View File

@@ -0,0 +1,15 @@
using System;
namespace AyaNova.Biz
{
/// <summary>
/// Marker attribute indicating that an object is a importable type
/// Used in <see cref="AyaType"/>
/// </summary>
[AttributeUsage(AttributeTargets.All)]
public class ImportableBizObjectAttribute : Attribute
{
//No code required, it's just a marker
//https://docs.microsoft.com/en-us/dotnet/standard/attributes/writing-custom-attributes
}
}//eons