Лев Исхаков Asked:2020-08-24 11:32:29 +0800 CST2020-08-24 11:32:29 +0800 CST 2020-08-24 11:32:29 +0800 CST 帮我弄清楚为什么该模块在文档表单 MaterialsPriceOnChange(Element) 中不起作用 772 我使用 1C:面向开发人员的 Enterprise 8.3 实用指南。刚开始学习这个程序和这种奇怪的语言。出现了这样一个问题(在此之前,手册中的代码和实际也有很多问题和不一致,但到目前为止已经可以修复所有问题) - 屏幕截图中的1个模块由于某种原因不起作用,尽管第二个出于某种原因确实如此。任务:更改单据中的价格或数量项目时,根据公式“价格*数量=金额”更改金额。屏幕截图中的第二个模块是较早创建的,也许这就是问题所在,但由于某种原因,情况似乎并非如此。帮助我解决这个问题,并就我需要了解的 1C 语言给我一些建议。请用截图回答。 1с 2 个回答 Voted Klepov Yura 2020-08-25T02:56:17+08:002020-08-25T02:56:17+08:00 您没有提供通用模块 Working with Documents.Calculate Amount () 的代码,很难猜出那里发生了什么,不幸的是,我没有心灵感应。 但是,您可以尝试这样做: &НаКлиенте Процедура МатериалыЦенаПриИзменении(Элемент) СтрокаТабличнойЧасти = Элементы.Материалы.ТекущиеДанные; // РаботаСДокументами.РассчитатьСумма(СтрокаТабличнойЧасти); СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена; КонецПроцедуры 检查详细信息选项卡的名称。零件与您的匹配。如果此选项有效,则处理通用模块 Working with Documents,其中有问题。可能通用模块的程序体一般是空的。 如果建议的解决方案对您有帮助,请勾选。因此,您将提高您和我在网站上的声誉。这会给我们更多的选择。谢谢你。 Best Answer Klepov Yura 2020-08-26T02:13:05+08:002020-08-26T02:13:05+08:00 该文档必须定义一个“文档表单” - 检查它是否未创建,然后默认创建并选择它(我在屏幕上有两个,您可能会有一个“文档表单”)。那些。我们告诉 1c 我们想向用户展示什么形式。 在文档的形式(默认选择的)上有一个表格部分“材料”,其中有“数量”、“价格”等列。检查每一列(数量和价格)的“OnChange”属性。此属性指定当值更改时将调用哪个过程。 例如,对于“价格”列,它应该是这样的: 要在“材料”表格部分中查看列的属性,请选择所需的列并使用右键选择属性,右侧将打开一个窗口,然后查看那里。 还要检查公共模块 WorkWithDocuments 的属性 如果建议的解决方案对您有帮助,请勾选。因此,您将提高您和我在网站上的声誉。这会给我们更多的选择。谢谢你。
您没有提供通用模块 Working with Documents.Calculate Amount () 的代码,很难猜出那里发生了什么,不幸的是,我没有心灵感应。
但是,您可以尝试这样做:
检查详细信息选项卡的名称。零件与您的匹配。如果此选项有效,则处理通用模块 Working with Documents,其中有问题。可能通用模块的程序体一般是空的。
如果建议的解决方案对您有帮助,请勾选。因此,您将提高您和我在网站上的声誉。这会给我们更多的选择。谢谢你。
该文档必须定义一个“文档表单” - 检查它是否未创建,然后默认创建并选择它(我在屏幕上有两个,您可能会有一个“文档表单”)。那些。我们告诉 1c 我们想向用户展示什么形式。
在文档的形式(默认选择的)上有一个表格部分“材料”,其中有“数量”、“价格”等列。检查每一列(数量和价格)的“OnChange”属性。此属性指定当值更改时将调用哪个过程。
例如,对于“价格”列,它应该是这样的:

要在“材料”表格部分中查看列的属性,请选择所需的列并使用右键选择属性,右侧将打开一个窗口,然后查看那里。
还要检查公共模块 WorkWithDocuments 的属性
如果建议的解决方案对您有帮助,请勾选。因此,您将提高您和我在网站上的声誉。这会给我们更多的选择。谢谢你。