/**
 * Код реестра в котором нужно создать запись
 */
let registryCode = 'registryCode';
var host = 'http://127.0.0.1:8080/Synergy/rest';

function api_get_json(req, userlogin, userpass) {
    let api = new org.apache.commons.httpclient.methods.GetMethod('http://127.0.0.1:8080/Synergy/rest'+req);
    let client = new org.apache.commons.httpclient.HttpClient();
    let creds = new org.apache.commons.httpclient.UsernamePasswordCredentials(userlogin, userpass);
    client.getParams().setAuthenticationPreemptive(true);
    client.getState().setCredentials(org.apache.commons.httpclient.auth.AuthScope.ANY, creds);
    api.setRequestHeader("Content-type", "application/json");
    let status = client.executeMethod(api);
    let responseBody = api.getResponseBodyAsString();
    api.releaseConnection();
    message = req +" "+status+" "+responseBody;
    return JSON.parse(responseBody);
}

function api_post_form(req, options) {
    let client = new org.apache.commons.httpclient.HttpClient();
    let creds = new org.apache.commons.httpclient.UsernamePasswordCredentials(options.userlogin, options.userpass);
    client.getParams().setAuthenticationPreemptive(true);
    client.getState().setCredentials(org.apache.commons.httpclient.auth.AuthScope.ANY, creds);
    var api = new org.apache.commons.httpclient.methods.PostMethod(options.host + req);
    if (options && options.datatype=='body') {
        api.setRequestHeader('Content-type', 'application/json; charset=utf-8');
        if(options.data) api.setRequestBody(options.data);
    }
    if (options && options.datatype=='form') {
        api.setRequestHeader('Content-type', 'application/x-www-form-urlencoded; charset=utf-8');
        if(options.data) api.addParameter("data", options.data['data']);
    }
    var result = client.executeMethod(api); let responseBody = api.getResponseBodyAsString();
    api.releaseConnection();
    return (options && options.resType == 'text' ? result : JSON.parse(responseBody));
}



    /**
     * dataUUID - идентификатор данных по форме записи реестра
     * documentID - идентификатор документа реестра
     * executionID - идентификатор блокирующего процесса
     */

    /*загружаем данные формы текущей записи*/
    let form = platform.getFormsManager().getFormData(dataUUID);
    form.load();
 
    /*записываем в массив данные из текущей записи*/
    let fldata = [];
    fldata.push({id: "num_contract_number_kz", type: "textbox", value : form.getValue('num_contract_number')});
    fldata.push({id: "list_name_city_ru", type: "textbox", value:form.getValue('list_name_city')});

    /*создаем запись реестра с данными из текущей записи*/
    let response = api_post_form('/api/registry/create_doc_rcc', {
        type: 'POST',
        datatype: 'body',
        host: host,
        userlogin: login,
        userpass: password,
        data: JSON.stringify({
            registryCode: registryCode,
            data : fldata
        })
    });
    console.error("=====result of doc creating: " + response.documentID);

    let cData = [];
    /*сохранение ссылки на созданный документ в текущем записи*/
    cData.push({id: "contract_individual", type: "reglink", key:response.documentID, valueID:response.documentID});
    let saveResponse = api_post_form('/api/asforms/data/merge', {
        type: 'POST',
        datatype: 'body',
        host: host,
        userlogin: login,
        userpass: password,
        data: JSON.stringify({
            uuid: dataUUID,
            data : cData
        }
        )
    });

    console.error('\n\n\nREGISTRY CREATE RCC ' + registryCode + ' status: ' + JSON.stringify(response) + '\n\n\n');
    result = true;
    message = 'запись создана';
