Skip to content
Snippets Groups Projects
Commit e70255a2 authored by Johannes Hörmann's avatar Johannes Hörmann
Browse files

[Projekt: Entwicklung - Neon][TicketNr.: 1034996][Objectrelation] Object-realation-type

parents 9b7cf302 cf0b72d5
No related branches found
No related tags found
No related merge requests found
Showing
with 117 additions and 17 deletions
......@@ -30,6 +30,7 @@
</entityField>
<entityField>
<name>STANDARD</name>
<mandatory v="true" />
<valueProcess>%aditoprj%/entity/Communication_entity/entityfields/standard/valueProcess.js</valueProcess>
</entityField>
<entityParameter>
......
import("system.result");
import("ObjectRelation_lib");
result.string(ObjectRelationUtils.getCurrentObjectNum(
"$param.ObjectType_param",
"$param.ObjectRowid_param",
"$field.OBJECT1_TYPE",
"$field.OBJECT1_ROWID",
"$field.OBJECT2_TYPE",
"$field.OBJECT2_ROWID"));
\ No newline at end of file
import("system.db");
import("system.result");
import("system.vars");
import("Context_lib");
result.string(db.cell(ContextUtils.getNameSql(vars.get("$field.OtherObjectType"), vars.get("$field.OtherObjectRowid"))));
This field is only filled when using the AnyObject Provider.
Calculates the opposite side of the given AnyObject parameters.
import("system.result");
import("system.vars");
var currentNum = vars.get("$field.CurrentObjectNumber");
if (currentNum == 1)
{
result.string(vars.get("$field.OBJECT2_ROWID"));
}
else if (currentNum == 2)
{
result.string(vars.get("$field.OBJECT1_ROWID"));
}
\ No newline at end of file
This field is only filled when using the AnyObject Provider.
Calculates the opposite side of the given AnyObject parameters.
\ No newline at end of file
import("system.result");
import("system.vars");
var currentNum = vars.get("$field.CurrentObjectNumber");
if (currentNum == 1)
{
result.string(vars.get("$field.OBJECT2_TYPE"));
}
else if (currentNum == 2)
{
result.string(vars.get("$field.OBJECT1_TYPE"));
}
\ No newline at end of file
import("system.result");
import("system.vars");
import("Keyword_lib");
var currentObjectNum = vars.get("$field.CurrentObjectNumber");
if (currentObjectNum == 1)
{
result.string(KeywordUtils);
}
else if (currentObjectNum == 2)
{
result.string("");
}
\ No newline at end of file
......@@ -94,6 +94,10 @@
<code>%aditoprj%/entity/Organisation_entity/entityfields/contacts/children/orgid_param/code.js</code>
<triggerRecalculation v="true" />
</entityParameter>
<entityParameter>
<name>ContactId_param</name>
<code>%aditoprj%/entity/Organisation_entity/entityfields/contacts/children/contactid_param/code.js</code>
</entityParameter>
</children>
</entityConsumer>
<entityField>
......
import("system.vars");
import("system.result");
result.string(vars.get("$field.PERSONID"));
\ No newline at end of file
......@@ -34,6 +34,7 @@
<contentType>TEXT</contentType>
<outputFormat>#,##0.00</outputFormat>
<mandatory v="true" />
<state>AUTO</state>
</entityField>
<entityField>
<name>PRODUCTPRICEID</name>
......@@ -87,6 +88,7 @@
<state>AUTO</state>
<stateProcess>%aditoprj%/entity/Productprice_entity/entityfields/pricelist/stateProcess.js</stateProcess>
<titleProcess>%aditoprj%/entity/Productprice_entity/entityfields/pricelist/titleProcess.js</titleProcess>
<displayValueProcess>%aditoprj%/entity/Productprice_entity/entityfields/pricelist/displayValueProcess.js</displayValueProcess>
<onValidation>%aditoprj%/entity/Productprice_entity/entityfields/pricelist/onValidation.js</onValidation>
</entityField>
<entityParameter>
......@@ -251,10 +253,6 @@
<name>CURRENCY.displayValue</name>
<expression>%aditoprj%/entity/Productprice_entity/recordcontainers/db/recordfieldmappings/currency.displayvalue/expression.js</expression>
</dbRecordFieldMapping>
<dbRecordFieldMapping>
<name>PRICELIST.displayValue</name>
<expression>%aditoprj%/entity/Productprice_entity/recordcontainers/db/recordfieldmappings/pricelist.displayvalue/expression.js</expression>
</dbRecordFieldMapping>
</recordFieldMappings>
</dbRecordContainer>
</recordContainers>
......
import("system.logging");
import("system.result");
import("system.neon");
import("system.vars");
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
{
logging.log("orga_id = " + vars.get("$param.ContactId_param"));
if(vars.exists("$param.ContactId_param") && vars.get("$param.ContactId_param") != "")
result.string(vars.get("$param.ContactId_param"));
}
......
import("system.db");
import("system.result");
import("system.neon");
import("system.vars");
import("system.logging");
import("Keyword_lib");
import("Sql_lib");
import("system.text");
var pricelistname = vars.get("$field.PRICELIST").trim();
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_VIEW && !pricelistname)
{
var preparedStatement = SqlCondition.begin().andPrepare("CONTACT.CONTACTID", vars.get("$field.CONTACT_ID"));
var dbresult = preparedStatement.buildSql("select ORGANISATION.NAME from CONTACT inner join ORGANISATION on CONTACT.ORGANISATION_ID=ORGANISATION.ORGANISATIONID", "1=2", "order by NAME");
var orgname = db.cell(dbresult);
result.string(orgname);
}
else
{
result.string(KeywordUtils.getViewValue($KeywordRegistry.get.ProductPricelist, vars.get("$field.PRICELIST")));
}
\ No newline at end of file
import("system.neon");
import("system.vars");
import("system.result");
if(vars.get("$field.CONTACT_ID") != "")
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$field.CONTACT_ID") != "")
result.string("false");
else
result.string("true");
\ No newline at end of file
result.string("true");
\ No newline at end of file
import("system.vars");
import("system.result");
import("system.neon");
if(vars.get("$field.CONTACT_ID") != "")
result.string("READONLY");
if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$field.CONTACT_ID") != "")
result.string("READONLY"); //invisible
else
result.string("EDITABLE");
\ No newline at end of file
result.string("EDITABLE");
import("system.neon");
import("system.vars");
import("system.result");
import("system.db");
import("Sql_lib");
// TODO: Wenn es möglich ist, den anzeigenamen des Produkts über die Entity beziehung zu laden, dann umbauen...!!!
result.string(db.cell(SqlCondition.begin()
if((vars.exists("$param.ProductId_param") && vars.get("$param.ProductId_param") && vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW)
|| vars.get("$sys.recordstate") == neon.OPERATINGSTATE_EDIT || vars.get("$sys.recordstate") == neon.OPERATINGSTATE_VIEW)
{
result.string(db.cell(SqlCondition.begin()
.andPrepareVars("PRODUCT.PRODUCTID", "$field.PRODUCT_ID")
.buildSql("select PRODUCTNAME from PRODUCT", "1=2")));
\ No newline at end of file
.buildSql("select PRODUCTNAME from PRODUCT", "1=2")));
}
\ No newline at end of file
import("system.result");
import("Keyword_lib");
var sql = KeywordUtils.getResolvedTitleSqlPart($KeywordRegistry.get.ProductPricelist, "PRODUCTPRICE.PRICELIST");
result.string(sql);
......@@ -33,6 +33,10 @@
<name>4fd6845e-cb3a-4fe3-8900-3b58a86cb374</name>
<entityField>FROMQUANTITY</entityField>
</neonTableColumn>
<neonTableColumn>
<name>1cf65759-0c48-4d3d-8bd1-ddf0645ded43</name>
<entityField>PRICELIST</entityField>
</neonTableColumn>
<neonTableColumn>
<name>3ed800e0-a630-42b4-9dda-288ab5eefc69</name>
<entityField>PRICE</entityField>
......
......@@ -6,7 +6,7 @@ How to use the SqlCondition (state: 06.12.2018)
(This lib is work in progress and may change in the future.)
== What is the SqlCondition ==
It is a lib which helps to creating SQL statements and especially simplifies prepared Statements.
It is a lib which helps to create SQL statements and especially simplifies prepared Statements.
== When should prepared statements be used ==
If possible ALWAYS.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment