EDT. Lots of strange warnings (errors)


If you wish to leave comments or ask questions, please log on or sign up.

The 1C:Enterprise developers forum

#1
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

What does this type of warning mean?

Quote
Return value type "Undefined" that has different environment
than calling context

The code works just fine. I am just curious that maybe I am missing something.

Edited: Alexey Gerasimov - May 30, 2018 03:39 PM
 
#2
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

I think I have found the solution for this. You can try "Validate all" option. It seems like these errors are cached from the previous installation.

Also I have noticed that syntax assistant fails when you have some function in Manager module or Object module (without any & prefix) and it calls some procedure form common module with the only option "Server". Syntax assistant shows that the procedure or function is not found. But if you add "Server call" it finds it without problem, although this module might be just server side.

 
#3
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

I'll post here some more errors to correct:

Syntax assistant does not know about XMLNodeType at [WebClient],

although according to the internal help:


Quote
Contains types of XML nodes that can be obtained by reading XML using the XMLReader object.

Properties:
None, StartElement, EndElement, Attribute, Text, ProcessingInstruction, CDATASection, DocumentTypeDefinition, EndEntity, Entity, EntityReference, Notation, XMLDeclaration, Comment, Whitespace
[Server, Mobile application - server, Thick client (managed application), Mobile application - client, External

 
#4
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

It seems that syntax assistant is wrong about this code too:

Code
      RecordSet = InformationRegisters.UserSettings.CreateRecordSet();
      RecordSet.Filter.User       = SelectionSettings.User;


According to syntax assistant Filter.User is not a writable field.

 
#5
People who like this:0Yes/0No
Administrator
Rating: 14
Joined: Dec 4, 2017
Company:

Dear Alexey,

Please let us know what version of EDT do you use?

Best regards,
Vladimir Gurov

1C Company support team
 
#6
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

The last one available 1.8.4.9

 
#7
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

Another problem:

After creating new object I have difficulties to sync with designer

Quote
Designer operation error occurred
File: C:\Users\Intel\AppData\Local\Temp\1cedt\ssh-59862\Alexey\xml-full-10044\Catalogs\Variantes.xml, document format error: unexpected read property. Current property: ObjectField, expected property: ChildObjects.

Is there any workaround?

 
#8
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

If I try to export -> restore from files I am getting the same error

Please help me with this error ASAP.

Edited: Alexey Gerasimov - May 31, 2018 11:18 PM
 
#9
People who like this:0Yes/0No
Administrator
Rating: 14
Joined: Dec 4, 2017
Company:

Dear Alexey,

Quote
Also I have noticed that syntax assistant fails when you have some function in Manager module or Object module (without any & prefix) and it calls some procedure form common module with the only option "Server". Syntax assistant shows that the procedure or function is not found. But if you add "Server call" it finds it without problem, although this module might be just server side.

This is correct behavior of Syntaxt Assistant. If you do not specify that the common module is a server-side module, then there are may be issues during the client-server interaction. The manager module and the object module can be executed at the client side. If the common module is not a server-side module, such a call is impossible. An automatic check of whether the given piece of code works in runtime mode does not cover of all the various situations in which it can actually work in this mode.

Quote
Syntax assistant does not know about XMLNodeType at [WebClient]

Quote
According to syntax assistant Filter.User is not a writable field

These two are confirmed issues. Thank you for reporting them. We will fix them in a next release.

Quote
After creating new object I have difficulties to sync with designer

Could you please send us a sample configuration and steps to reproduce this behavior? Also, please let us know whether you changed EDT files manually, rather than by using EDT's user interface.

Best regards,
Vladimir Gurov

1C Company support team
 
#10
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

Vladimir, I have managed to solve the problem.

There is an error in EDT. If you import some project with Characteristics and this characteristic filter type is not defined Designer would generate those strings:

Code
    <typesFilterField>-1</typesFilterField>
    <typesFilterValue xsi:type="core:UndefinedValue"/>


If you try to open this object in EDT it would not show this settings in Preferences pane. It just wont show anything.

If you create the same object from EDT and leave those fields empty in resulting mdo and xml files to pass to designer those field would be omitted. So designer will be unable to load the configuration.

To solve this I have to manually edit files generated by EDT and it started to work again. Although after my edits modification of those settings is unavailable in EDT, same as imported objects from designer.

Edited: Alexey Gerasimov - Jun 01, 2018 10:34 AM
 
#11
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

Quote
Vladimir Gurov wrote:
This is correct behavior of Syntaxt Assistant. If you do not specify that the common module is a server-side module, then there are may be issues during the client-server interaction. The manager module and the object module can be executed at the client side. If the common module is not a server-side module, such a call is impossible. An automatic check of whether the given piece of code works in runtime mode does not cover of all the various situations in which it can actually work in this mode.
Could you please provide some examples.

As far as I know, manager module and object module are only available at server side. So any call from manager module is a server side call, without client-server interaction.

 
#12
People who like this:0Yes/0No
Administrator
Rating: 14
Joined: Dec 4, 2017
Company:

Dear Alexey,

As for the issue where you mentioned this piece of code:

Code
<typesFilterField>-1</typesFilterField>

<typesFilterValue xsi:type="core:UndefinedValue"/>


We reproduced this issue. Than you once more for reporting it. We will fix it soon.

Best regards,
Vladimir Gurov

1C Company support team
 
#13
People who like this:0Yes/0No
Administrator
Rating: 14
Joined: Dec 4, 2017
Company:

Dear Alexey,

Quote
Could you please provide some examples.

Here is a sample:

https://mega.nz/#!HGhVyZ4b!9kkz8l1dW5yNf60IJIHW9mB--l4zEvgGTYiZwn4Re6k

In this configuration, if you click "Configuration > Check configuration" on the menu in Designer, then select "Thick client (managed application, client/server mode)", and finally click OK, the system displays an error message saying that the "CommonModule1" variable is not defined.

If you open the properties of the "CommonModule1" common module, select the "Server call" property, and then perform the same check, the system reports there are no errors.

Best regards,
Vladimir Gurov

1C Company support team
 
#14
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

But why this one is considered as an error?
1. Object module could contain only server side code. Right? So there is no way some function from Object module could have been calling from client.
2. If common module is Server only there should be no problem, because any call from server should be allowed.
3. The code actually works great.
4. If I try to define server/client side code in object module I am getting an error.

Edited: Alexey Gerasimov - Jun 04, 2018 06:41 PM
 
#15
People who like this:0Yes/0No
Administrator
Rating: 14
Joined: Dec 4, 2017
Company:

Dear Alexey,

Here are the answers to your questions:

1) An object module can contain not only server-side code. A sample of this is launching the application in thick client mode.

2) Using compilation directives in object modules has no sense because all procedures in such modules are compiled at the server side.

3) The fact that the given piece of code works correctly in the specified environment does not mean it will always remain correct in another environment. This is what Designer and EDT notify you about.

Best regards,
Vladimir Gurov

1C Company support team
 
#16
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

You are making a mess with those definitions...

considering that 1c has interpreter (you can run code dynamically) you sentences mean:

Quote
An object module can contain not only server-side code
but
Quote
object modules ... are run at the server side
compiled = run

If you run Infobase locally obviously there is no server, so everything run at client, but this does not mean that you have to eliminate all directives. It only means that server and client side is the same computer.

 
#17
People who like this:0Yes/0No
Administrator
Rating: 14
Joined: Dec 4, 2017
Company:

Dear Alexey,

If you deploy an infobase locally on a computer and run it from the same computer, 1C:Enterprise platform uses its internal software server. So, server-side code in such an infobase runs on this server.

Best regards,
Vladimir Gurov

1C Company support team
 
#18
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

Vladimir, that is exactly what I am trying to clarify with you.

You are saying that if the code is inside object module, it could be only server-side. Right? So if it is server-side, than any call from server-side to server common module should not require client->server call option.

 
#19
People who like this:0Yes/0No
Administrator
Rating: 14
Joined: Dec 4, 2017
Company:

Dear Alexey,

Now EDT validates application's code with the purpose of protecting the application user from most unexpected situations. And the EDT developers will keep improving the validation scenarios.

Best regards,
Vladimir Gurov

1C Company support team
 
#20
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

Quote
Vladimir Gurov wrote:
Now EDT validates application's code with the purpose of protecting the application user from most unexpected situations. And the EDT developers will keep improving the validation scenarios.

Does this mean that you are accepting that I am right and developers will adjust validation process? I am insisting because for the first time it is possible to use EDT to write production code and I am using it with success for one week now, but there are few drawbacks which makes editing experience not so pleasant.

Another small problem: EDT does not recognize custom common attributes for the objects and mark them as unused variables.

 
#21
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

I think I found another EDT problem. It seems to be related to the characteristic problem I described earlier. If you copy table section of the object with characteristics data to another object, the types of copied objects could not match the original ones.

For example I had table section with 2 attributes: characteristic and value with the corresponding types of ChartOfCharacteristicTypes ans Characteristic. After copy all of the copied items were of type ChartOfCharacteristicTypes. So I had to manually delete new attributes and create them again.
The copy action was performed by drag and drop with ctrl pressed.

Edited: Alexey Gerasimov - Jun 08, 2018 03:15 PM
 
#22
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

Vladimir, could you please confirm also that it is correct:

1. I define procedure A() in Global common module with Server and Server Call and Global marks
2. I should be able to call it from object module like so: A();

Now I am getting an error:

Quote
Procedure or function 'A' is not defined [Thick client
(managed application)]

Am I missing something or everything is correct and it is just EDT validation mistake.

Thank you in advance

 
#23
People who like this:0Yes/0No
Administrator
Rating: 14
Joined: Dec 4, 2017
Company:

Dear Alexey,


Quote
1. I define procedure A() in Global common module with Server and Server Call and Global marks
2. I should be able to call it from object module like so: A();

Now I am getting an error:

It is a confirmed issue. Thank you for informing us about it. We plan to fix it soon.


Quote
I think I found another EDT problem. It seems to be related to the characteristic problem I described earlier. If you copy table section of the object with characteristics data to another object, the types of copied objects could not match the original ones.

For example I had table section with 2 attributes: characteristic and value with the corresponding types of ChartOfCharacteristicTypes ans Characteristic. After copy all of the copied items were of type ChartOfCharacteristicTypes. So I had to manually delete new attributes and create them again.
The copy action was performed by drag and drop with ctrl pressed

Here we need a sample configuration and steps to reproduce the issue to be sure we discuss the same behavior of the application.

Best regards,
Vladimir Gurov

1C Company support team
 
#24
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

Please confirm if it is a bug o no...

If I define some form event handler for example event Begin selection (as it called now in EDT)

Code
Procedure BienesVarianteStartChoice(Item, ChoiceData, StandardProcessing)


I am getting a warning that this function is not used.

 
#25
People who like this:0Yes/0No
Administrator
Rating: 14
Joined: Dec 4, 2017
Company:

Dear Alexey,

Quote
If I define some form event handler for example event Begin selection (as it called now in EDT)

Here we need a sample configuration to check whether it is an issue or not.

Best regards,
Vladimir Gurov

1C Company support team
 
#26
People who like this:0Yes/0No
Interested
Rating: 33
Joined: Oct 27, 2011
Company: Abaco Soluciones S.A.

Quote
Here we need a sample configuration to check whether it is an issue or not.
I have tried to reproduce the issue in new configuration, but in new seems to work fine. I will inform you if I could narrow the problem.

Also I have troubles with new EDT installation. I can not manage to build the project from Git files. When I try to build th configuration I am getting

Quote
Designer operation error occurred
Designer command "config load-files --dir="xml-full-87447" --update-config-dump-info" execution was aborted due to shell disconnect. Shell input:

There is no shell input text. Do you have any idea?

Also could you please allow access for me on users.v8.1c to download betas. I have access for platform, but EDT is unavailable.

 
#27
People who like this:0Yes/0No
Administrator
Rating: 14
Joined: Dec 4, 2017
Company:

Dear Alexey,

We publish all releases of EDT on the https://1c-dn.com/ site. So far, EDT v. 1.8.4.9 is the newest version. On releases.1c.ru, there is no newer version of EDT.

As for the issue you mentioned, could you please provide us with:

- exact steps to reproduce the issue

- 1C:Enterprise platform version

- EDT version

- EDT execution log (<workspace location>/.metadata/.log)

?

Best regards,
Vladimir Gurov

1C Company support team
 
Subscribe