Ну вот набросал примерчик. Он упрощенный, но смысл такой же примерно (код листвью со скриншота выше выложить не могу просто из-за того, что там идут зависимости от модели данных).
Лично я все рисую кодом - так полный контроль того, что выводится на экран. И собственно так можно выводить практически что угодно. И не нужны никакие монструозные ТМС компоненты
ListView_Schedule_Sample.zip
не знаю как с null'ом, но вот MemberView - это массив (в квадратных же скобках). тут проще. что-то типа такого:
var
MemView: ISuperArray;
myJSON: ISuperObject;
...
myJSON := SO('сюда загоняем json');
MemView := myJSON.A['MemberView'];
if MemView.Length = 0 then {Пустой массив}
П.С. глянул то, как можно проверить на null, вышло следующее (вроде работает):
var
x: ISuperObject;
begin
x := SO('{"value":null}');
if x.Null['value'] = jNull then
ShowMessage('null')
else
ShowMessage(x.I['value'].ToString)
end;