From 6874aed4a237e71e0700d345e8c8323a65bcdc57 Mon Sep 17 00:00:00 2001 From: Eric Date: Mon, 2 Mar 2020 12:03:39 +0100 Subject: [PATCH] =?UTF-8?q?N=C2=B01627=20-=20Ticket=20ref=20sometimes=20du?= =?UTF-8?q?plicate=20add=20MakeInsertQuery()=20to=20legacy?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/legacy/dbobjectsearchlegacy.class.php | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/core/legacy/dbobjectsearchlegacy.class.php b/core/legacy/dbobjectsearchlegacy.class.php index 15d1fce2c..24e67db2c 100644 --- a/core/legacy/dbobjectsearchlegacy.class.php +++ b/core/legacy/dbobjectsearchlegacy.class.php @@ -1678,6 +1678,25 @@ class DBObjectSearch extends DBSearch return $sRet; } + /** + * Generate an INSERT statement. + * Note : unlike `RenderUpdate` and `RenderSelect`, it is limited to one and only one table. + * + * @param array $aValues is an array of $sAttCode => $value + * @param array $aArgs + * + * @return string + * @throws \CoreException + */ + public function MakeInsertQuery($aValues, $aArgs = array()) + { + $oSQLObjectQueryBuilder = new SQLObjectQueryBuilder($this); + $oSQLQuery = $oSQLObjectQueryBuilder->MakeSQLObjectUpdateQuery($aValues); + $aScalarArgs = MetaModel::PrepareQueryArguments($aArgs, $this->GetInternalParams()); + $sRet = $oSQLQuery->RenderInsert($aScalarArgs); + return $sRet; + } + public function GetSQLQueryStructure($aAttToLoad, $bGetCount, $aGroupByExpr = null, $aSelectedClasses = null, $aSelectExpr = null) { // Hide objects that are not visible to the current user