if I understand correctly you need to keep track of a survey field across multiple records. If so, a shared or global variable should do the trick. You could use an array, but I tend to keep things simple and use a delimited string and then search for the value in the string. Easy to search (INSTR() ),easy to manipulate/maintain (LEFT() & MID() )
Second question seems vague...as it would seem you would just link to the hotel. If it is to be in summary, you would probably want to use a subreport (you might want to pass via shared variable a list of hotels to filter against), if it is to be displayed as the report as generated, link to the table and display.
HTH