Перейти к основному содержанию
`Ctrl`+`K`

# 04.book

Локальный скрипт модуля LBR. Используется для служебной настройки, миграции, очистки или восстановления данных, связанных с объектами модуля.

Место применения: `Сервис > Инструменты > Выполнить JEXL-скрипт`

Внимание

Скрипт привязан к объектам конкретного модуля и требует проверки на целевой базе. Перед запуском проверьте идентификаторы, SQL-запросы, API-классы и условия обработки.

Тип: JEXL-скрипт

    var sClassName = "Lbr_Book"
    	var list = [["978-5-04-121401-2", "Пушкин Александр Сергеевич: Капитанская дочка", "002", "002", "0001", 2022.000000000000000000B, 384.000000000000000000B, "«Повести покойного Ивана Петровича Белкина» А.С. Пушкин написал болдинской осенью 1830 года, находясь на трехмесячном карантине."], ["978-5-04-121401-3", "Портрет Дориана Грея", "002", "001", "0004", 1994.000000000000000000B, 400.000000000000000000B, null], ["978-5-04-119061-3", "Анна Каренина", "002", "005", "0006", null, null, null], ["978-5-389-06256-6", "Война и мир", "002", "004", "0006", null, null, null], ["978-5-04-116677-9", "Идиот", "002", "001", "0005", null, null, null], ["978-5-17-063868-0", "Бесы", "002", "001", "0005", null, null, null], ["978-5-699-70277-0", "Воскресенье", "002", "005", "0006", null, null, null], ["978-5-4467-0296-1", "Зигмунд в кафе", "002", "003", "0007", null, null, null], ["978-5-17-053221-6", "Братья Карамазовы", "002", "003", "0005", null, null, null], ["978-5-389-10222-4", "Лотман Ю.: Александр Сергеевич Пушкин. Биография писателя", "007", "003", "0003", 2015.000000000000000000B, 286.000000000000000000B, "Юрий Михайлович Лотман - всемирно известный ученый, филолог и культуролог, чьи труды переведены на все основные европейские языки. Его наследие чрезвычайно обширно и насчитывает около восьмисот научных и научно-популярных статей и книг."]];
    	var api = Btk_ClassApi.getApiBySimpleClassName(sClassName);
    	//var apiCatalog = Btk_ClassApi.getApiBySimpleClassName("Lbr_Catalog");
    	var apiPublisher = Btk_ClassApi.getApiBySimpleClassName("Lbr_Publisher");
    	var apiAuthor = Btk_ClassApi.getApiBySimpleClassName("Lbr_Author");
    	for (t : list){
    		var svCode = t.0;
    		var idv = api.findByMnemoCode(svCode);
    		if(idv == null){
    			var rop = api.insert();
    			api.setsISBN(rop, svCode);
    			api.setsCaption(rop, t.1);
    			//var idvCatalog = apiCatalog.findByMnemoCode(t.2);
    			//if(idvCatalog != null){
    			//	api.setidCatalog(rop, idvCatalog);
    			//}
    			var idvPublisher = apiPublisher.findByMnemoCode(t.3);
    			if(idvPublisher != null){
    				api.setidPublisher(rop, idvPublisher);
    			}
    			var idvAuthor = apiAuthor.findByMnemoCode(t.4);
    			if(idvAuthor != null){
    				api.setidAuthor(rop, idvAuthor);
    			}
    			api.setnYear(rop, t.5);
    			api.setnColPage(rop, t.6);
    			if(t.7 != null){
    				api.setsDesc(rop, t.7);
    			}

    		}
    	}
    	commit();