mirror of
https://github.com/1C-Company/v8-code-style.git
synced 2024-12-01 02:32:18 +02:00
This commit is contained in:
parent
9c51b2beae
commit
8fa731f0b4
@ -25,6 +25,7 @@
|
||||
- Клиентский общий модуль должен оканчиваться на суффикс Клиент
|
||||
- Не заполнено ни представление объекта, ни представление списка
|
||||
- У предопределенного регламентного задания не должно быть заполнено наименование
|
||||
- У стандартного свойства 'Владелец' или 'Родитель' должен быть заполнен синоним
|
||||
|
||||
#### Формы
|
||||
|
||||
|
@ -0,0 +1,16 @@
|
||||
# Synonym of the 'Owner' or 'Parent' standard attribute is not specified
|
||||
|
||||
1.5. For standard attributes Parent and Owner, always set synonyms different from their default synonyms. For example, a configuration contains the Files catalog with the Owner standard attribute of the CatalogRef.FilesFolders type.
|
||||
Do not use
|
||||
|
||||
* The default synonym Owner of the Owner standard attribute.
|
||||
|
||||
Correct example:
|
||||
|
||||
* Make sure the synonym reflects its purpose: "Folder" or "File directory".
|
||||
|
||||
|
||||
|
||||
## See
|
||||
|
||||
[Name, synonym, comment](https://support.1ci.com/hc/en-us/articles/360011120439-Name-synonym-comment)
|
@ -0,0 +1,14 @@
|
||||
# Не задан синоним стандартного реквизита "Родитель" или "Владелец".
|
||||
|
||||
1.5. При этом для стандартных реквизитов Родитель и Владелец, следует всегда указывать синонимы, отличные от синонимов по умолчанию. Например, в конфигурации имеется справочник Файлы со стандартным реквизитом Владелец типа СправочникСсылка.ПапкиФайлов. В этом случае
|
||||
неправильно
|
||||
|
||||
* оставлять синоним стандартного реквизита Владелец по умолчанию: «Владелец»;
|
||||
|
||||
правильно
|
||||
|
||||
* вложить в синоним прикладной смысл: «Папка» или «Папка с файлом».
|
||||
|
||||
## См.
|
||||
|
||||
[Пользовательские представления объектов](https://its.1c.ru/db/v8std#content:474:hdoc)
|
@ -54,6 +54,10 @@
|
||||
category="com.e1c.v8codestyle.md"
|
||||
class="com.e1c.v8codestyle.internal.md.ExecutableExtensionFactory:com.e1c.v8codestyle.md.check.MdScheduledJobDescriptionCheck">
|
||||
</check>
|
||||
<check
|
||||
category="com.e1c.v8codestyle.md"
|
||||
class="com.e1c.v8codestyle.internal.md.ExecutableExtensionFactory:com.e1c.v8codestyle.md.check.MdStandardAttributeSynonymEmpty">
|
||||
</check>
|
||||
</extension>
|
||||
|
||||
</plugin>
|
||||
|
@ -0,0 +1,159 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (C) 2021, 1C-Soft LLC and others.
|
||||
*
|
||||
* This program and the accompanying materials are made
|
||||
* available under the terms of the Eclipse Public License 2.0
|
||||
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* 1C-Soft LLC - initial API and implementation
|
||||
* Bombin Valentin - issue #119
|
||||
*******************************************************************************/
|
||||
|
||||
package com.e1c.v8codestyle.md.check;
|
||||
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.BASIC_DB_OBJECT__STANDARD_ATTRIBUTES;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.CATALOG;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.STANDARD_ATTRIBUTE__SYNONYM;
|
||||
|
||||
import org.eclipse.core.runtime.IProgressMonitor;
|
||||
|
||||
import com._1c.g5.v8.dt.common.StringUtils;
|
||||
import com._1c.g5.v8.dt.core.platform.IV8Project;
|
||||
import com._1c.g5.v8.dt.core.platform.IV8ProjectManager;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.Catalog;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.MdObject;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.ObjectBelonging;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.StandardAttribute;
|
||||
import com.e1c.g5.v8.dt.check.CheckComplexity;
|
||||
import com.e1c.g5.v8.dt.check.ICheckParameters;
|
||||
import com.e1c.g5.v8.dt.check.components.BasicCheck;
|
||||
import com.e1c.g5.v8.dt.check.components.TopObjectFilterExtension;
|
||||
import com.e1c.g5.v8.dt.check.settings.IssueSeverity;
|
||||
import com.e1c.g5.v8.dt.check.settings.IssueType;
|
||||
import com.google.inject.Inject;
|
||||
|
||||
/**
|
||||
* The check the {@link MdObject} has specified synonyms for owner and parent
|
||||
* for default language of the project.
|
||||
*
|
||||
* @author Bombin Valentin
|
||||
*
|
||||
*/
|
||||
public class MdStandardAttributeSynonymEmpty
|
||||
extends BasicCheck
|
||||
{
|
||||
private static final String CHECK_ID = "md-standard-attribute-synonym-empty"; //$NON-NLS-1$
|
||||
private static final String OWNER_NAME = "Owner"; //$NON-NLS-1$
|
||||
private static final String PARENT_NAME = "Parent"; //$NON-NLS-1$
|
||||
|
||||
private final IV8ProjectManager v8ProjectManager;
|
||||
|
||||
@Inject
|
||||
public MdStandardAttributeSynonymEmpty(IV8ProjectManager v8ProjectManager)
|
||||
{
|
||||
super();
|
||||
this.v8ProjectManager = v8ProjectManager;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCheckId()
|
||||
{
|
||||
return CHECK_ID;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureCheck(CheckConfigurer builder)
|
||||
{
|
||||
builder.title(Messages.MdOwnerAttributeSynonymEmpty_Title)
|
||||
.description(Messages.MdOwnerAttributeSynonymEmpty_Description)
|
||||
.complexity(CheckComplexity.NORMAL)
|
||||
.severity(IssueSeverity.MINOR)
|
||||
.issueType(IssueType.UI_STYLE)
|
||||
.extension(new TopObjectFilterExtension())
|
||||
.topObject(CATALOG)
|
||||
.checkTop()
|
||||
.features(BASIC_DB_OBJECT__STANDARD_ATTRIBUTES, STANDARD_ATTRIBUTE__SYNONYM);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void check(Object object, ResultAcceptor resultAceptor, ICheckParameters parameters,
|
||||
IProgressMonitor monitor)
|
||||
{
|
||||
|
||||
MdObject mdObject = (MdObject)object;
|
||||
if (mdObject.getObjectBelonging() != ObjectBelonging.NATIVE)
|
||||
{
|
||||
return;
|
||||
}
|
||||
IV8Project project = v8ProjectManager.getProject(mdObject);
|
||||
String languageCode = project.getDefaultLanguage().getLanguageCode();
|
||||
if (monitor.isCanceled())
|
||||
{
|
||||
return;
|
||||
}
|
||||
checkParent((Catalog)object, resultAceptor, languageCode);
|
||||
checkOwner((Catalog)object, resultAceptor, languageCode);
|
||||
}
|
||||
|
||||
private boolean hasAnyOwner(Catalog catalog)
|
||||
{
|
||||
return !catalog.getOwners().isEmpty();
|
||||
}
|
||||
|
||||
private boolean hasParent(Catalog catalog)
|
||||
{
|
||||
return catalog.isHierarchical();
|
||||
}
|
||||
|
||||
private StandardAttribute getStandardAttributeByName(Catalog catalog, String attributeName)
|
||||
{
|
||||
for (StandardAttribute attribute : catalog.getStandardAttributes())
|
||||
{
|
||||
if (attribute.getName().compareTo(attributeName) == 0)
|
||||
{
|
||||
return attribute;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
private String getSynonym(StandardAttribute attribute, String languageCode)
|
||||
{
|
||||
return attribute.getSynonym().get(languageCode);
|
||||
}
|
||||
|
||||
private void checkParent(Catalog catalog, ResultAcceptor resultAceptor, String languageCode)
|
||||
{
|
||||
if (!hasParent(catalog))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
StandardAttribute attribute = getStandardAttributeByName(catalog, PARENT_NAME);
|
||||
|
||||
if (attribute == null || StringUtils.isBlank(getSynonym(attribute, languageCode)))
|
||||
{
|
||||
resultAceptor.addIssue(Messages.MdOwnerAttributeSynonymEmpty_ErrorMessage,
|
||||
BASIC_DB_OBJECT__STANDARD_ATTRIBUTES);
|
||||
}
|
||||
}
|
||||
|
||||
private void checkOwner(Catalog catalog, ResultAcceptor resultAceptor, String languageCode)
|
||||
{
|
||||
if (!hasAnyOwner(catalog))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
StandardAttribute attribute = getStandardAttributeByName(catalog, OWNER_NAME);
|
||||
|
||||
if (attribute == null || StringUtils.isBlank(getSynonym(attribute, languageCode)))
|
||||
{
|
||||
resultAceptor.addIssue(Messages.MdOwnerAttributeSynonymEmpty_ErrorMessage,
|
||||
BASIC_DB_OBJECT__STANDARD_ATTRIBUTES);
|
||||
}
|
||||
}
|
||||
}
|
@ -48,6 +48,9 @@ final class Messages
|
||||
public static String MdListObjectPresentationCheck_decription;
|
||||
public static String MdListObjectPresentationCheck_Neither_Object_presentation_nor_List_presentation_is_not_filled;
|
||||
public static String MdListObjectPresentationCheck_title;
|
||||
public static String MdOwnerAttributeSynonymEmpty_Title;
|
||||
public static String MdOwnerAttributeSynonymEmpty_Description;
|
||||
public static String MdOwnerAttributeSynonymEmpty_ErrorMessage;
|
||||
public static String MdScheduledJobDescriptionCheck_title;
|
||||
public static String MdScheduledJobDescriptionCheck_description;
|
||||
public static String MdScheduledJobDescriptionCheck_message;
|
||||
|
@ -45,6 +45,12 @@ MdObjectNameLength_title = Metadata object name length
|
||||
|
||||
MdObjectNameWithoutSuffix_Name_suffix_list_title = Name suffix list, comma separated
|
||||
|
||||
MdOwnerAttributeSynonymEmpty_Description = Synonym of the 'Owner' or 'Parent' standard attribute is not specified
|
||||
|
||||
MdOwnerAttributeSynonymEmpty_ErrorMessage = Synonym of the 'Owner' or 'Parent' standard attribute is not specified
|
||||
|
||||
MdOwnerAttributeSynonymEmpty_Title = Synonym of the 'Owner' or 'Parent' standard attribute is not specified
|
||||
|
||||
MdScheduledJobDescriptionCheck_description = The description of the predefine sheduled job is set
|
||||
|
||||
MdScheduledJobDescriptionCheck_message = The description of the predefine sheduled job is set
|
||||
|
@ -46,6 +46,12 @@ MdObjectNameLength_title = Длина имени объекта метаданн
|
||||
|
||||
MdObjectNameWithoutSuffix_Name_suffix_list_title = Список суффиксов имени, разделенный запятой
|
||||
|
||||
MdOwnerAttributeSynonymEmpty_Description = Не задан синоним у стандартного свойства 'Владелец' или 'Родитель'
|
||||
|
||||
MdOwnerAttributeSynonymEmpty_ErrorMessage = Не задан синоним у стандартного свойства 'Владелец' или 'Родитель'
|
||||
|
||||
MdOwnerAttributeSynonymEmpty_Title = Не задан синоним у стандартного свойства 'Владелец' или 'Родитель'
|
||||
|
||||
MdScheduledJobDescriptionCheck_description = Задано наименование предопределенного регламентного задания
|
||||
|
||||
MdScheduledJobDescriptionCheck_message = Задано наименование предопределенного регламентного задания
|
||||
|
@ -0,0 +1,92 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (C) 2021, 1C-Soft LLC and others.
|
||||
*
|
||||
* This program and the accompanying materials are made
|
||||
* available under the terms of the Eclipse Public License 2.0
|
||||
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* 1C-Soft LLC - initial API and implementation
|
||||
* Bombin Valentin - issue #119
|
||||
*******************************************************************************/
|
||||
package com.e1c.v8codestyle.md.check.itests;
|
||||
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertNull;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import com._1c.g5.v8.dt.core.platform.IDtProject;
|
||||
import com._1c.g5.v8.dt.validation.marker.Marker;
|
||||
import com.e1c.g5.v8.dt.testing.check.CheckTestBase;
|
||||
import com.e1c.v8codestyle.md.check.MdStandardAttributeSynonymEmpty;
|
||||
|
||||
/**
|
||||
* The test for class {@link MdStandardAttributeSynonymEmpty}.
|
||||
*
|
||||
* @author Bombin Valentin
|
||||
*/
|
||||
public class MdStandardAttributeSynonymEmptyTest
|
||||
extends CheckTestBase
|
||||
{
|
||||
|
||||
private static final String CHECK_ID = "md-standard-attribute-synonym-empty"; //$NON-NLS-1$
|
||||
private static final String PROJECT_NAME = "MdStandardAttributeSynonymEmpty";
|
||||
|
||||
/**
|
||||
* Test MD-Object has synonym property for attribute parent or owner
|
||||
*
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
@Test
|
||||
public void testPositiveTest() throws Exception
|
||||
{
|
||||
IDtProject dtProject = openProjectAndWaitForValidationFinish(PROJECT_NAME);
|
||||
assertNotNull(dtProject);
|
||||
|
||||
long id = getTopObjectIdByFqn("Catalog.PositiveParentTest", dtProject);
|
||||
Marker marker = getFirstMarker(CHECK_ID, id, dtProject);
|
||||
assertNull(marker);
|
||||
|
||||
id = getTopObjectIdByFqn("Catalog.PositiveOwnerTest", dtProject);
|
||||
marker = getFirstMarker(CHECK_ID, id, dtProject);
|
||||
assertNull(marker);
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testNegativeParent() throws Exception
|
||||
{
|
||||
|
||||
IDtProject dtProject = openProjectAndWaitForValidationFinish(PROJECT_NAME);
|
||||
assertNotNull(dtProject);
|
||||
|
||||
long id = getTopObjectIdByFqn("Catalog.NegativeOwnerTest", dtProject);
|
||||
Marker marker = getFirstMarker(CHECK_ID, id, dtProject);
|
||||
assertNotNull(marker);
|
||||
|
||||
id = getTopObjectIdByFqn("Catalog.NegativeOwnerTestWithComment", dtProject);
|
||||
marker = getFirstMarker(CHECK_ID, id, dtProject);
|
||||
assertNotNull(marker);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testNegativeOwner() throws Exception
|
||||
{
|
||||
|
||||
IDtProject dtProject = openProjectAndWaitForValidationFinish(PROJECT_NAME);
|
||||
assertNotNull(dtProject);
|
||||
|
||||
long id = getTopObjectIdByFqn("Catalog.NegativeParentTest", dtProject);
|
||||
Marker marker = getFirstMarker(CHECK_ID, id, dtProject);
|
||||
assertNotNull(marker);
|
||||
|
||||
id = getTopObjectIdByFqn("Catalog.NegativeParentTestWithComment", dtProject);
|
||||
marker = getFirstMarker(CHECK_ID, id, dtProject);
|
||||
assertNotNull(marker);
|
||||
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>MdPropertySynonymInNotSetForStandartAttributeOwner</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
|
||||
<nature>com._1c.g5.v8.dt.core.V8ConfigurationNature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
@ -0,0 +1,2 @@
|
||||
eclipse.preferences.version=1
|
||||
encoding/<project>=UTF-8
|
@ -0,0 +1,2 @@
|
||||
Manifest-Version: 1.0
|
||||
Runtime-Version: 8.3.19
|
@ -0,0 +1,58 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mdclass:Catalog xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="d514ac30-f9e9-4f34-9a58-1ce7fe15c81f">
|
||||
<producedTypes>
|
||||
<objectType typeId="731d48a6-bd91-4732-8378-d3b180468bf1" valueTypeId="514ca0b8-1b19-40e7-8341-f97ca85ced74"/>
|
||||
<refType typeId="145f9fd7-4384-4ef7-bade-2ff6f15d4a08" valueTypeId="a1321480-9fe2-4fb5-ad7b-28cb754802c6"/>
|
||||
<selectionType typeId="cc4373fb-b5b2-43d2-a907-e282316bd07a" valueTypeId="c1dd4de6-d924-4e62-880f-aedeb909a3bd"/>
|
||||
<listType typeId="3a68875b-f061-4f3f-abea-51fb1792c0c6" valueTypeId="a05ba9a9-5cfa-4b24-9f1d-050ecc9c43a6"/>
|
||||
<managerType typeId="d3fcac36-af9a-46e1-89ff-b744c11416d2" valueTypeId="d909a819-a65f-4e07-8842-a9ead838e199"/>
|
||||
</producedTypes>
|
||||
<name>NegativeOwnerTest</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Negative owner test</value>
|
||||
</synonym>
|
||||
<comment>Есть владелец, но нет синонима у стандартного реквизита Владелец</comment>
|
||||
<useStandardCommands>true</useStandardCommands>
|
||||
<inputByString>Catalog.NegativeOwnerTest.StandardAttribute.Code</inputByString>
|
||||
<inputByString>Catalog.NegativeOwnerTest.StandardAttribute.Description</inputByString>
|
||||
<fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString>
|
||||
<standardAttributes>
|
||||
<dataHistory>Use</dataHistory>
|
||||
<name>Owner</name>
|
||||
<comment></comment>
|
||||
<fillFromFillingValue>true</fillFromFillingValue>
|
||||
<fillChecking>ShowError</fillChecking>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
</standardAttributes>
|
||||
<standardAttributes>
|
||||
<dataHistory>Use</dataHistory>
|
||||
<name>Parent</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>This is parrent</value>
|
||||
</synonym>
|
||||
<comment></comment>
|
||||
<fillFromFillingValue>true</fillFromFillingValue>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
</standardAttributes>
|
||||
<createOnInput>Use</createOnInput>
|
||||
<dataLockControlMode>Managed</dataLockControlMode>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
<objectPresentation>
|
||||
<key>en</key>
|
||||
<value>Negative owner test</value>
|
||||
</objectPresentation>
|
||||
<levelCount>2</levelCount>
|
||||
<foldersOnTop>true</foldersOnTop>
|
||||
<owners>Catalog.PositiveParentTest</owners>
|
||||
<codeLength>9</codeLength>
|
||||
<descriptionLength>25</descriptionLength>
|
||||
<codeType>String</codeType>
|
||||
<codeAllowedLength>Variable</codeAllowedLength>
|
||||
<checkUnique>true</checkUnique>
|
||||
<autonumbering>true</autonumbering>
|
||||
<defaultPresentation>AsDescription</defaultPresentation>
|
||||
<editType>InDialog</editType>
|
||||
<choiceMode>BothWays</choiceMode>
|
||||
</mdclass:Catalog>
|
@ -0,0 +1,47 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mdclass:Catalog xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="975db09f-e93e-4cbe-a54b-fe0fd2c970be">
|
||||
<producedTypes>
|
||||
<objectType typeId="8b6aa8f7-688b-44cf-84ee-b616b1add67f" valueTypeId="56ad87b5-213e-4827-9fce-deb763b3bbe1"/>
|
||||
<refType typeId="2d8ec45f-b0e8-4ae8-868b-69a2791033d3" valueTypeId="772844a9-7c9a-4791-997c-60269bba8bf4"/>
|
||||
<selectionType typeId="14a058fc-88b8-4e47-bc8a-ef950d598c04" valueTypeId="16c2472b-ca03-46d6-9846-c94f9cea4b13"/>
|
||||
<listType typeId="7a47d9b4-cbba-4d1a-81c7-0acaa27d8930" valueTypeId="133bb7d4-582d-47cc-94b6-fc0d3aada032"/>
|
||||
<managerType typeId="2568f78c-e7d7-437a-8b76-707e35f64164" valueTypeId="be2decb8-2ce9-4cf3-9e3e-6897cf66404c"/>
|
||||
</producedTypes>
|
||||
<name>NegativeOwnerTestWithComment</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Negative owner test with comment</value>
|
||||
</synonym>
|
||||
<comment>Есть владелец, есть комментарий у свойства "Владелец", но нет синонима</comment>
|
||||
<useStandardCommands>true</useStandardCommands>
|
||||
<inputByString>Catalog.NegativeOwnerTestWithComment.StandardAttribute.Code</inputByString>
|
||||
<inputByString>Catalog.NegativeOwnerTestWithComment.StandardAttribute.Description</inputByString>
|
||||
<fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString>
|
||||
<standardAttributes>
|
||||
<dataHistory>Use</dataHistory>
|
||||
<name>Owner</name>
|
||||
<comment>Comment</comment>
|
||||
<fillFromFillingValue>true</fillFromFillingValue>
|
||||
<fillChecking>ShowError</fillChecking>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
</standardAttributes>
|
||||
<createOnInput>Use</createOnInput>
|
||||
<dataLockControlMode>Managed</dataLockControlMode>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
<objectPresentation>
|
||||
<key>en</key>
|
||||
<value>Negative owner test with comment</value>
|
||||
</objectPresentation>
|
||||
<levelCount>2</levelCount>
|
||||
<foldersOnTop>true</foldersOnTop>
|
||||
<owners>Catalog.PositiveParentTest</owners>
|
||||
<codeLength>9</codeLength>
|
||||
<descriptionLength>25</descriptionLength>
|
||||
<codeType>String</codeType>
|
||||
<codeAllowedLength>Variable</codeAllowedLength>
|
||||
<checkUnique>true</checkUnique>
|
||||
<autonumbering>true</autonumbering>
|
||||
<defaultPresentation>AsDescription</defaultPresentation>
|
||||
<editType>InDialog</editType>
|
||||
<choiceMode>BothWays</choiceMode>
|
||||
</mdclass:Catalog>
|
@ -0,0 +1,46 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mdclass:Catalog xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="f07f2e1b-8932-4c2e-9c76-bf37494ca068">
|
||||
<producedTypes>
|
||||
<objectType typeId="0ac55597-f870-4db9-b8bb-140ae87ba58c" valueTypeId="a98d91f3-5d17-4393-922e-31e8a0222bc0"/>
|
||||
<refType typeId="5d3bc8d1-846c-44b1-9a1f-62aa57bc9489" valueTypeId="0cdb0eb5-7037-4053-acbd-ad4fb43e8df3"/>
|
||||
<selectionType typeId="8fc220b6-c6a4-4e21-b4c4-f41d180cb9ab" valueTypeId="92c05ccb-4815-49da-a6ba-aa2711128559"/>
|
||||
<listType typeId="190305b9-d579-47b4-97f9-ad8eea79714a" valueTypeId="fdfa31ba-1d4a-4b27-bdb4-55fd890fe21d"/>
|
||||
<managerType typeId="228ab753-fe0a-4255-a1d4-c01e490b6b4d" valueTypeId="d612b9aa-b596-4c0b-a0de-4e9de2342d6b"/>
|
||||
</producedTypes>
|
||||
<name>NegativeParentTest</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Negative parent test</value>
|
||||
</synonym>
|
||||
<comment>Есть признак иерархии, но у свойства "Родитель" нет синонима</comment>
|
||||
<useStandardCommands>true</useStandardCommands>
|
||||
<inputByString>Catalog.NegativeParentTest.StandardAttribute.Code</inputByString>
|
||||
<inputByString>Catalog.NegativeParentTest.StandardAttribute.Description</inputByString>
|
||||
<fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString>
|
||||
<standardAttributes>
|
||||
<dataHistory>Use</dataHistory>
|
||||
<name>Parent</name>
|
||||
<comment>Простой комметарий</comment>
|
||||
<fillFromFillingValue>true</fillFromFillingValue>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
</standardAttributes>
|
||||
<createOnInput>Use</createOnInput>
|
||||
<dataLockControlMode>Managed</dataLockControlMode>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
<objectPresentation>
|
||||
<key>en</key>
|
||||
<value>Negative parent test</value>
|
||||
</objectPresentation>
|
||||
<hierarchical>true</hierarchical>
|
||||
<levelCount>2</levelCount>
|
||||
<foldersOnTop>true</foldersOnTop>
|
||||
<codeLength>9</codeLength>
|
||||
<descriptionLength>25</descriptionLength>
|
||||
<codeType>String</codeType>
|
||||
<codeAllowedLength>Variable</codeAllowedLength>
|
||||
<checkUnique>true</checkUnique>
|
||||
<autonumbering>true</autonumbering>
|
||||
<defaultPresentation>AsDescription</defaultPresentation>
|
||||
<editType>InDialog</editType>
|
||||
<choiceMode>BothWays</choiceMode>
|
||||
</mdclass:Catalog>
|
@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mdclass:Catalog xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="d677f499-23ef-4e84-b637-0843eb4e9ae0">
|
||||
<producedTypes>
|
||||
<objectType typeId="358dc8ca-6fb0-4c32-b859-9d84a82350f8" valueTypeId="daa0cc50-d414-46e3-b7d3-7437048b5dd8"/>
|
||||
<refType typeId="b8628a2a-fcfd-440b-99ec-78d14f373930" valueTypeId="eb613d86-bd2a-4133-b037-fe6f5d101539"/>
|
||||
<selectionType typeId="0f5441ed-2191-49b5-8bc0-5c321be956eb" valueTypeId="1b35ac13-f90d-4b60-b2d8-19464d39082c"/>
|
||||
<listType typeId="0f6eca1b-2b0e-42f8-b30d-834eb39f6a70" valueTypeId="42640379-7900-4363-96ad-0d138d713572"/>
|
||||
<managerType typeId="3d53bab7-20fe-4a96-b48a-cee13f06719f" valueTypeId="e8d5b2a7-678b-4dc4-bb38-addc080f1397"/>
|
||||
</producedTypes>
|
||||
<name>NegativeParentTestWithComment</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Negative parent test with comment</value>
|
||||
</synonym>
|
||||
<comment>Есть признак иерархии, у свойства "Родитель" есть комментарий, но нет синонима</comment>
|
||||
<useStandardCommands>true</useStandardCommands>
|
||||
<inputByString>Catalog.NegativeParentTestWithComment.StandardAttribute.Code</inputByString>
|
||||
<inputByString>Catalog.NegativeParentTestWithComment.StandardAttribute.Description</inputByString>
|
||||
<fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString>
|
||||
<createOnInput>Use</createOnInput>
|
||||
<dataLockControlMode>Managed</dataLockControlMode>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
<objectPresentation>
|
||||
<key>en</key>
|
||||
<value>Negative parent test with comment</value>
|
||||
</objectPresentation>
|
||||
<hierarchical>true</hierarchical>
|
||||
<levelCount>2</levelCount>
|
||||
<foldersOnTop>true</foldersOnTop>
|
||||
<codeLength>9</codeLength>
|
||||
<descriptionLength>25</descriptionLength>
|
||||
<codeType>String</codeType>
|
||||
<codeAllowedLength>Variable</codeAllowedLength>
|
||||
<checkUnique>true</checkUnique>
|
||||
<autonumbering>true</autonumbering>
|
||||
<defaultPresentation>AsDescription</defaultPresentation>
|
||||
<editType>InDialog</editType>
|
||||
<choiceMode>BothWays</choiceMode>
|
||||
</mdclass:Catalog>
|
@ -0,0 +1,50 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mdclass:Catalog xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="f9b07c72-38b3-438c-954e-c46ab1585762">
|
||||
<producedTypes>
|
||||
<objectType typeId="b8820d2f-6a5f-4b90-81e6-06964ae63af5" valueTypeId="4bb10aa3-8ffa-4c6f-81eb-dae5f5708615"/>
|
||||
<refType typeId="0c6f24a2-8823-4001-9f04-e1c658bcf474" valueTypeId="8c7abfaf-3fb3-4adb-9627-45f03c833020"/>
|
||||
<selectionType typeId="d640ed2c-af9f-4579-8c65-be893a6336ea" valueTypeId="6c944550-1eaa-48e9-ac85-39fbae8b8457"/>
|
||||
<listType typeId="9f89bf06-2ad3-4cb3-9fb1-d9c1e26d5036" valueTypeId="a565ecc8-60cf-41a2-8bfa-3991e0dd4458"/>
|
||||
<managerType typeId="a41a764d-6c34-402b-a5fe-092bf52bb42b" valueTypeId="5d690789-09e2-4ebd-97c1-a5c52219ba32"/>
|
||||
</producedTypes>
|
||||
<name>PositiveOwnerTest</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Positive owner test</value>
|
||||
</synonym>
|
||||
<comment>Корректно заполнено свойство Владелец</comment>
|
||||
<useStandardCommands>true</useStandardCommands>
|
||||
<inputByString>Catalog.PositiveOwnerTest.StandardAttribute.Code</inputByString>
|
||||
<inputByString>Catalog.PositiveOwnerTest.StandardAttribute.Description</inputByString>
|
||||
<fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString>
|
||||
<standardAttributes>
|
||||
<dataHistory>Use</dataHistory>
|
||||
<name>Owner</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Good synonym</value>
|
||||
</synonym>
|
||||
<fillFromFillingValue>true</fillFromFillingValue>
|
||||
<fillChecking>ShowError</fillChecking>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
</standardAttributes>
|
||||
<createOnInput>Use</createOnInput>
|
||||
<dataLockControlMode>Managed</dataLockControlMode>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
<objectPresentation>
|
||||
<key>en</key>
|
||||
<value>Positive owner test</value>
|
||||
</objectPresentation>
|
||||
<levelCount>2</levelCount>
|
||||
<foldersOnTop>true</foldersOnTop>
|
||||
<owners>Catalog.PositiveParentTest</owners>
|
||||
<codeLength>9</codeLength>
|
||||
<descriptionLength>25</descriptionLength>
|
||||
<codeType>String</codeType>
|
||||
<codeAllowedLength>Variable</codeAllowedLength>
|
||||
<checkUnique>true</checkUnique>
|
||||
<autonumbering>true</autonumbering>
|
||||
<defaultPresentation>AsDescription</defaultPresentation>
|
||||
<editType>InDialog</editType>
|
||||
<choiceMode>BothWays</choiceMode>
|
||||
</mdclass:Catalog>
|
@ -0,0 +1,49 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mdclass:Catalog xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="e11efc84-1bf1-474f-8243-094b1e7e9d73">
|
||||
<producedTypes>
|
||||
<objectType typeId="cb053a13-267b-4721-89d4-bf1c39f7dc68" valueTypeId="c20efe3f-bd85-48f3-a6e2-c92a9f2d3516"/>
|
||||
<refType typeId="9501e1e8-3510-4131-a088-1826577b1ac8" valueTypeId="78dee52c-cb11-4024-8547-bacd9f16fbce"/>
|
||||
<selectionType typeId="f7d4e1af-2bb5-42e6-b7e4-120eb00150d5" valueTypeId="35b41bd1-8b69-417d-a4e2-0c611c5ba20e"/>
|
||||
<listType typeId="4c5d2328-8c79-4e87-b8bf-bc078d405b35" valueTypeId="98ca7cff-2131-4e34-a9e1-85b812bf89e1"/>
|
||||
<managerType typeId="8e1a6219-c018-48ce-86a9-1b72ce13fd10" valueTypeId="fb8e91b7-ef5c-448b-ba8c-2ca77962103d"/>
|
||||
</producedTypes>
|
||||
<name>PositiveParentTest</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Positive parent test</value>
|
||||
</synonym>
|
||||
<comment>Корректно заполнено свойство "Родитель"</comment>
|
||||
<useStandardCommands>true</useStandardCommands>
|
||||
<inputByString>Catalog.PositiveParentTest.StandardAttribute.Code</inputByString>
|
||||
<inputByString>Catalog.PositiveParentTest.StandardAttribute.Description</inputByString>
|
||||
<fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString>
|
||||
<standardAttributes>
|
||||
<dataHistory>Use</dataHistory>
|
||||
<name>Parent</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Simple text</value>
|
||||
</synonym>
|
||||
<fillFromFillingValue>true</fillFromFillingValue>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
</standardAttributes>
|
||||
<createOnInput>Use</createOnInput>
|
||||
<dataLockControlMode>Managed</dataLockControlMode>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
<objectPresentation>
|
||||
<key>en</key>
|
||||
<value>Positive parent test</value>
|
||||
</objectPresentation>
|
||||
<hierarchical>true</hierarchical>
|
||||
<levelCount>2</levelCount>
|
||||
<foldersOnTop>true</foldersOnTop>
|
||||
<codeLength>9</codeLength>
|
||||
<descriptionLength>25</descriptionLength>
|
||||
<codeType>String</codeType>
|
||||
<codeAllowedLength>Variable</codeAllowedLength>
|
||||
<checkUnique>true</checkUnique>
|
||||
<autonumbering>true</autonumbering>
|
||||
<defaultPresentation>AsDescription</defaultPresentation>
|
||||
<editType>InDialog</editType>
|
||||
<choiceMode>BothWays</choiceMode>
|
||||
</mdclass:Catalog>
|
@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<cmi:CommandInterface xmlns:cmi="http://g5.1c.ru/v8/dt/cmi"/>
|
@ -0,0 +1,47 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="421f1251-5e78-4a48-8cd9-5a0e45d75a8f">
|
||||
<name>MdPropertySynonymInNotSetForStandartAttributeOwner</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Md property synonym in not set for standart attribute owner</value>
|
||||
</synonym>
|
||||
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="f25666b7-4548-4dc1-822f-26bb21ef44c5"/>
|
||||
<containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="6058e7a0-0cc2-4453-953a-29cbbccd40ae"/>
|
||||
<containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="c3626634-0484-4100-8c59-1ea9c6915461"/>
|
||||
<containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="96816197-b896-42a7-9b26-c31b24628fda"/>
|
||||
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="3b4745b0-7bfd-4d09-8321-f7b2def70a1b"/>
|
||||
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="2ef61fd5-8881-40a1-a4ab-1fc53b68a016"/>
|
||||
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="8061261a-2ca1-4a18-95c5-746bc46fc369"/>
|
||||
<configurationExtensionCompatibilityMode>8.3.19</configurationExtensionCompatibilityMode>
|
||||
<defaultRunMode>ManagedApplication</defaultRunMode>
|
||||
<usePurposes>PersonalComputer</usePurposes>
|
||||
<usedMobileApplicationFunctionalities>
|
||||
<functionality>
|
||||
<use>true</use>
|
||||
</functionality>
|
||||
<functionality>
|
||||
<functionality>OSBackup</functionality>
|
||||
<use>true</use>
|
||||
</functionality>
|
||||
</usedMobileApplicationFunctionalities>
|
||||
<defaultLanguage>Language.English</defaultLanguage>
|
||||
<dataLockControlMode>Managed</dataLockControlMode>
|
||||
<objectAutonumerationMode>NotAutoFree</objectAutonumerationMode>
|
||||
<modalityUseMode>DontUse</modalityUseMode>
|
||||
<synchronousPlatformExtensionAndAddInCallUseMode>DontUse</synchronousPlatformExtensionAndAddInCallUseMode>
|
||||
<compatibilityMode>8.3.19</compatibilityMode>
|
||||
<languages uuid="65c3dd05-6b95-40ac-9887-c14325594d93">
|
||||
<name>English</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>English</value>
|
||||
</synonym>
|
||||
<languageCode>en</languageCode>
|
||||
</languages>
|
||||
<catalogs>Catalog.NegativeOwnerTest</catalogs>
|
||||
<catalogs>Catalog.NegativeOwnerTestWithComment</catalogs>
|
||||
<catalogs>Catalog.NegativeParentTest</catalogs>
|
||||
<catalogs>Catalog.NegativeParentTestWithComment</catalogs>
|
||||
<catalogs>Catalog.PositiveOwnerTest</catalogs>
|
||||
<catalogs>Catalog.PositiveParentTest</catalogs>
|
||||
</mdclass:Configuration>
|
@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<cmi:CommandInterface xmlns:cmi="http://g5.1c.ru/v8/dt/cmi"/>
|
Loading…
Reference in New Issue
Block a user