Создание счета в одно нажатие

Здравствуйте, подскажите пожалуйста как можно решить задачю!

В карточке продаж в группе элементов "Счета" по одному нажатию нужно формировать и прикреплять счет к этой продаже не переходя и редактирую карточку счета! тоесть: Нажимаю на кнопку Добавить и в этот момент вся информация продажи и продукты продажи в том числе, подтягивались в счет, автоматически создавали его и добавляли в группу элементов "Счет"( вообщем все что мы делаем руками при добавлении счета, нажал-> открыл-> заполнил->сохранил, делалось автоматически )
Буду благодарен за инф.

Нравится

8 комментариев

Здравствуйте.

Необходимо создать действие в карточке продажи. Для этого, необходимо создать расширяющий клиентский модуль.
В качестве родительской страницы указать соответственно страницу карточки продажи.

Далее в левом блоке кода, добавить примерно такой код:

define('OpportunityPage', ['ext-base', 'terrasoft', 'sandbox', , 'Opportunity', 'OpportunityPageStructure',
    'OpportunityPageResources', 'GeneralDetails'],
    function(Ext, Terrasoft, sandbox, Opportunity, structure, resources, GeneralDetails) {
 
        structure.userCode = function() {
 
this.methods.createInvoice = function(){             
    //код для создания счета
   //получить данные продажи можно так
   var opportunityId = this.get('Id');
   var OpportunityTitle = this.get('Title');
};
this.actions = [
{
    caption: 'Создать счет',
    methodName: 'createInvoice'
}
];
        };
     return structure;
    });

После публикации, у Вас на странице появится действие "Создать счет".
В функции createInvoice необходимо прописать логику добавления нового счета.
Как получить значения полей текущей продажи есть в примере.
Чтобы получить файлы продажи - нужно будет создавать отдельные select'ы, а затем и insert'ы.
Примеры можно посмотреть в исходных кодах конфигурации.

Дмитрий, большое Вам спасибо, просто огромное))

> Чтобы получить файлы продажи - нужно будет создавать отдельные select'ы, а затем и insert'ы.
Примеры можно посмотреть в исходных кодах конфигурации.

А можно указать место, где это можно посмотреть?

Здравствуйте, Наталья!

Пример можно посмотреть в схеме MoneyModule, функции "function onLoadCurrencyRate".

А можно перейти на страницу счета через
function goToPage()
{
var url = document.getElementById('id_Элемента');
document.location.href = url.value;
} ???
Из-за того что анг язык в BPM не работает, уж больно сложно придумывать код)

а где можно глянуть пример отображения карточки, или пример перехода по нажатию на пунк действия и переход на карточку?

Юрий,

this.add('EditPageName', null, this);

Дмитрий :lol: Большое спасибо)

Показать все комментарии