Папка с файлами курса не создается

Я создаю курсы, используя Valence API.

В DOME включена переменная d2lTools.CMS.CoursePathEnforced.

Согласно документации:

Дорожка:

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

Поэтому при создании курса я устанавливаю для свойства пути пустую строку.

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

Это баг или у меня что-то не так настроено?

Привет, Иэн


person Iain Carlin    schedule 07.03.2013    source источник
comment
Я успешно протестировал этот вызов на тестовых экземплярах LMS версий LE 10.0, 10.1 и 10.2. Во всех этих случаях переменная CourseEnforcedPath была установлена ​​для корневого организационного подразделения. Обратите внимание, что даже несмотря на то, что значение по умолчанию для этой переменной DOME может быть «включено», вам следует дважды проверить, что для корневого организационного подразделения установлен небольшой флажок «Значение», чтобы убедиться, что он установлен как «включенный» для корневого организационного подразделения. структура.   -  person Viktor Haag    schedule 08.03.2013
comment
Когда я говорю, что успешно протестировал этот вызов, я имел в виду, что этот вызов создал курс, который указал, что в записи курса есть правильный путь, привязанный к содержимому; однако на некоторых платформах теперь очевидно, что это не создает фактический путь в системе хранения, поэтому фактическое добавление контента в курс не работает. Это известная проблема, и ее исправление появится в пакете обновлений очень скоро.   -  person Viktor Haag    schedule 20.04.2013


Ответы (1)


Вот пример структуры JSON, которую вы должны отправить (обратите внимание, что свойства CourseTemplateId и SemesterId относятся к значениям D2LID для шаблона курса и семестра, из которого получен новый курс):

{"LocaleId": null, 
 "CourseTemplateId": 1234, 
 "Name": "Extensibility 105", 
 "ShowAddressBook": false, 
 "ForceLocale": false, 
 "StartDate": null, 
 "EndDate": null, 
 "Path": "", 
 "SemesterId": 5678, 
 "Code": "EXT-105"}

Вызов create отправляет обратно JSON после успешного создания, который выглядит следующим образом:

{"Name": "Extensibility 105",
 "StartDate": null, 
 "CourseTemplate": {"Name": "ExtensibilityTemplate", 
                    "Code": "EXT-TMPL",
                    "Identifier": "1234"},
 "EndDate": null, 
 "Path": "/content/enforced/7531-EXT-105/",
 "IsActive": true,
 "Semester": {"Name": "Spring 2013",
              "Code": "S2013", 
              "Identifier": "5678"},
 "Code": "EXT-105",
 "Department": {"Name": "ExtensibilityDepartment",
                "Code": "1",
                "Identifier": "2468"},
 "Identifier": "7531"}

Обратите внимание, что вызов выделяет свойство Identifier для нового курса, а затем включает эту идентификацию в принудительное содержимое Path, как и следовало ожидать.

person Viktor Haag    schedule 08.03.2013
comment
Спасибо, Виктор, мой JSON похож на ваш пример. Я просто повторно запустил свой код создания со следующим: {Name:MATHEMATICS, Code:09MAT6, Path:, CourseTemplateId:6722, SemesterId:6712, StartDate: null, EndDate: null, LocaleId: 100001, ForceLocale: True, ShowAddressBook: False} И результат, который вернулся, дает: ... Путь:/content/enforced/6964-09MAT6/, ... Однако, когда я просматриваю файловую систему, фактическая созданная папка была: /content/enforced/c6a13311 -ceaf-46f6-a9cc-debaadf8009d-09MAT6 Есть мысли, почему так? - person Iain Carlin; 12.03.2013
comment
Для меня это звучит как ошибка: у нас есть сообщение об ошибке в пути создания курса и пути к контенту на некоторых платформах, поэтому, возможно, вы столкнулись с тем же. Не могли бы вы сообщить мне, какую версию серверной службы и пакет обновления вы используете? - person Viktor Haag; 20.04.2013
comment
Привет Виктор. Спасибо за внимание. Наша LE — это версия 10.1.0 SP2, а платформа интеграции и промежуточного программного обеспечения — версия 1.4.0. Вам нужны эти две цифры? - person Iain Carlin; 22.04.2013
comment
Да, это известная проблема. Реализовано исправление, которое будет выпущено в грядущем пакете обновлений для LE v10.1.0 и более поздних версий. - person Viktor Haag; 25.04.2013