Как передать списки (и другую информацию) из глобальной переменной родительской модели в глобальную переменную дочерней модели в Netlo go LevelSpace - PullRequest
0 голосов
/ 01 августа 2020

В настоящее время я создаю многоуровневую ABM, используя Levelspace. Я также использую расширение extrawidget в качестве интерфейса GUI для ввода и сбора информации о пользователях. Extrawidget GUI представляет собой автономную модель Netlo go и служит родительской моделью в Levelspace. Некоторая собранная информация хранится в виде списков в глобальных переменных родительской модели.

Я пытаюсь передать содержимое глобальных переменных родительской модели extrawidget (особенно списки) глобальным переменным дочерней модели. Я не могу найти способ достичь этого sh. Я пробовал «ls: let» в сочетании с «ls: ask», чтобы установить глобальную переменную дочерних моделей, но это не сработало. Я использовал «ls: assign», но это тоже не увенчалось успехом.

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

Может ли кто-нибудь помочь мне в решении этой проблемы.

Спасибо

Руди

--------------- -----------------------------------------Следовать за------ ---------------------------------------------

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

"Исключение расширения: Модель 0 (Масштабируемая Agile Simulator1.nlo go) обнаружила ошибку: ЭЛЕМЕНТ ожидал, что ввод будет строкой или списком, но вместо этого получил номер 0. Ошибка при запуске наблюдателя LS: ASK, вызванный процедурой SETUP, вызываемый процедурой __EVALUATOR "

Я включил код настройки дочерней модели ниже:

to setup
  ls:reset
  ;clear-all
  
  let n length TotEpics
  foreach n-values n [ [i] -> i ] [ [i] ->
    create-Epics 1 [
      setxy -20 20
      set label item i TotEpics
      set Complex item i EpicCmplx
      set Stories item i EpicStories
      set ETime [ ]
      set Tasks1 EpicTasks1
      set Tasks2 EpicTasks2
      set Tasks3 EpicTasks3
      set Tasks4 EpicTasks4
      set shape "box"
      set size 8
    ]
  ]
  let o length ScrumTN1
  foreach n-values o [ [i] -> i ] [ [i] ->
    create-Scrum-Teams 1 [
      set label item i ScrumTN1
      set shape "Scrum"
      set color color
      set Members item i ScrumTM1
      set Strat item i ScrumStrt1
      set AsgnEpic item i ScrmEpic1
      set S-Stories 0
      set Cost item i ScrumCst1
      set Value [  ]
      set Time [ ]
      set S-Story-Size 0
      set xcor -16
      set ycor 12 + i * -7
      set size 4.5
      ls:create-interactive-models 1 "Problem_Solving_in_Networks WIP.nlogo"
      set model-id last ls:models
      ls:hide model-id
    ]
  ]
  let b length ScrumTN2
   foreach n-values b [ [i] -> i ] [ [i] ->
    create-Scrum-Teams 1 [
      set label item i ScrumTN2
      set shape "Scrum"
      set color item i Color1
      set Members item i ScrumTM2
      set Strat item i ScrumStrt2
      set AsgnEpic item i ScrmEpic2
      set S-Stories 0
      set Cost item i ScrumCst2
      set Value [  ]
      set Time [ ]
      set S-Story-Size 0
      set xcor -4.5
      set ycor 12 + i * -7
      set size 4.5
      ls:create-interactive-models 1 "Problem_Solving_in_Networks WIP.nlogo"
      set model-id last ls:models
      ls:hide model-id
   ]
 ]

  let p length KanbanTN3
  foreach n-values p [ [i] -> i ] [ [i] ->
    create-Kanban-Teams 1  [
      set label item i KanbanTN3
      set shape "Kanban"
      set color color
      set xcor -18 + i * 9
      set ycor -20
      set size 4.5
      ls:create-interactive-models 1 "Kanban3_v5_2.nlogo"
      set model-id last ls:models
      ls:hide model-id
    ]
 ]

Все« переменные »в« set variable-name item i variables »являются списками, поэтому я Я не ожидаю увидеть сообщение об ошибке: «ЭЛЕМЕНТ ожидал, что ввод будет строкой или списком, но вместо этого получил число 0»

У кого-нибудь есть идеи?

Спасибо

Руди

------------------------------------------ --- Не обращайте внимания до дальнейшего уведомления -----------------------------------

I обнаружил некоторую ошибку петь код в моей команде настройки, вызывающий эту «ОШИБКУ». Не обращайте внимания на мой вопрос. Если я столкнусь с серьезными препятствиями, я свяжусь с вами.

Спасибо

...