我有关于Cognos 10的快速提问。我正在尝试导出我创建的数据项,该数据项具有报表表达式作为值。例如:IF(ParamValue(' p_RPO')为NULL)那么('')ELSE(ParamDisplayValue(' p_RPO'))。当我以HTML格式导出报表时,它按预期工作。但是,当我选择excel 2007数据时,它似乎删除了具有报表表达式的数据项列。有办法解决这个问题吗?
答案 0 :(得分:0)
不使用报表表达式而是使用以下表达式向查询添加数据项:
class AddMedia(LoginRequiredMixin, StaffuserRequiredMixin, JsonRequestResponseMixin, GenericView):
require_json = True
def post(self, request, *args, **kwargs):
object_id = self.request_json["objectId"]
object_var = self.request_json["objectVarName"]
content_type_id = self.request_json["contentType"]
order = self.request_json["order"]
media_id = self.request_json["mediaId"]
media_type = self.request_json["mediaType"]
content_type = _get_content_type_or_404(content_type_id)
content_object = _get_object_or_404(content_type, object_id)
model_var = getattr(content_object, object_var)
try:
if media_type.lower() == "image":
obj = Image.objects.get(pk=media_id)
elif media_type.lower() == "video":
obj = Video.objects.get(pk=media_id)
else:
raise Http404("Invalid mediaType parameter: {0}".format(media_type))
media_item = model_var.create(content_object=obj)
media_item.order = order
media_item.save()
except model_var.model.DoesNotExist:
pass
return self.render_json_response({'message': "Order successfully updated"})
将此数据项添加到列表中。
要使p_RPO参数可选,必须使用指定默认值的提示宏。在这种情况下:
if (?p_RPO? is null) then ('whatever') else (?p_RPO?)