-
ChatterFeed
-
0Best Answers
-
0Likes Received
-
0Likes Given
-
1Questions
-
2Replies
The value 'null' is not valid for operator '>'
I have the following code, but when I open this VF I just receive the error: The value 'null' is not valid for operator '>'
I really dont know what I'm missing, I think its related with pageBlockTable.
Thanks in advance.
I really dont know what I'm missing, I think its related with pageBlockTable.
Thanks in advance.
<apex:page StandardController="Opportunity" contenttype="application/pdf" renderAs="pdf"> <apex:stylesheet value="{!$Resource.landscape}"/> <apex:pageBlock > <apex:form > <apex:variable var="i" value="{!0}"/> <apex:pageBlockTable value="{!Opportunity.OpportunityLineItems}" rendered="{!OR(ISNULL(Opportunity.Desconto__c),Opportunity.Desconto__c=0)}" var="oli" cellpadding="4" style="font-size:14px" border="0"> <apex:column > <apex:variable var="i" value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, i+1, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, i+1, i))}"/> </apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Código"><apex:outputText >{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.productcode, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.productcode, null))}</apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Descrição">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.name, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.name, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Fabricante">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Fabricante__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Fabricante__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="ANVISA">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.ANVISA__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.ANVISA__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;text-align:center;" headerValue="Fornecedor">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;text-align:center" headerValue="Qtde"><apex:outputText value="{0,number, integer}"><apex:param value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Quantidade_cotada__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Quantidade_consumida__c, null))}"/></apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Preço"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), null))}" /></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Valor"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.Total_cotado__c >= 1000000,TEXT(FLOOR(oli.Total_cotado__c / 1000000)) & ".","") & IF(oli.Total_cotado__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_cotado__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_cotado__c)), 3) & "," & IF(MOD(oli.Total_cotado__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.Total_consumido__c >= 1000000,TEXT(FLOOR(oli.Total_consumido__c / 1000000)) & ".","") & IF(oli.Total_consumido__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_consumido__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_consumido__c)), 3) & "," & IF(MOD(oli.Total_consumido__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100, 99))), null))}"/></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Código"><apex:outputText >{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.productcode, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.productcode, null))}</apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Descrição">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.name, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.name, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Fabricante">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Fabricante__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Fabricante__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="ANVISA">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.ANVISA__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.ANVISA__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;text-align:center;" headerValue="Fornecedor">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;text-align:center;" headerValue="Qtde"><apex:outputText value="{0,number, integer}"><apex:param value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Quantidade_cotada__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Quantidade_consumida__c, null))}"/></apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Preço"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), null))}" /></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Valor"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.Total_cotado__c >= 1000000,TEXT(FLOOR(oli.Total_cotado__c / 1000000)) & ".","") & IF(oli.Total_cotado__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_cotado__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_cotado__c)), 3) & "," & IF(MOD(oli.Total_cotado__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.Total_consumido__c >= 1000000,TEXT(FLOOR(oli.Total_consumido__c / 1000000)) & ".","") & IF(oli.Total_consumido__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_consumido__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_consumido__c)), 3) & "," & IF(MOD(oli.Total_consumido__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100, 99))), null))}"/></apex:column> </apex:pageBlockTable> <!-- Se não tem desconto, é a lista relacionada de cima, se sim é o de baixo --> <apex:pageBlockTable value="{!Opportunity.OpportunityLineItems}" rendered="{!NOT(OR(ISNULL(Opportunity.Desconto__c),Opportunity.Desconto__c=0))}" var="oli" cellpadding="4" style="font-size:14px" border="0"> <apex:column > <apex:variable var="i" value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, i+1, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, i+1, i))}"/> </apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Código"><apex:outputText >{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.productcode, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.productcode, null))}</apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Descrição">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.name, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.name, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO','Fabricante','Lote')}">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Fabricante__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Fabricante__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="ANVISA">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.ANVISA__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.ANVISA__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;text-align:center;" headerValue="Fornecedor">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;text-align:center" headerValue="Qtde"><apex:outputText value="{0,number, integer}"><apex:param value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Quantidade_cotada__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Quantidade_consumida__c, null))}"/></apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Preço Lista"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), null))}" /></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;text-align:center;" headerValue="Desc"><apex:outputText value="{0,number,percent}"><apex:param value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Discount/100, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Discount/100, null))}" /></apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Preço Desconto"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Valor_cotado__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Valor_consumido__c, null))}"/></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Valor"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.Total_cotado__c >= 1000000,TEXT(FLOOR(oli.Total_cotado__c / 1000000)) & ".","") & IF(oli.Total_cotado__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_cotado__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_cotado__c)), 3) & "," & IF(MOD(oli.Total_cotado__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.Total_consumido__c >= 1000000,TEXT(FLOOR(oli.Total_consumido__c / 1000000)) & ".","") & IF(oli.Total_consumido__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_consumido__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_consumido__c)), 3) & "," & IF(MOD(oli.Total_consumido__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100, 99))), null))}"/></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Código"><apex:outputText >{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.productcode, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.productcode, null))}</apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Descrição">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.name, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.name, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO','Fabricante','Lote')}">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Fabricante__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Fabricante__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="ANVISA">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.ANVISA__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.ANVISA__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;text-align:center;" headerValue="Fornecedor">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;text-align:center;" headerValue="Qtde"><apex:outputText value="{0,number, integer}"><apex:param value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Quantidade_cotada__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Quantidade_consumida__c, null))}"/></apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Preço Lista"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), null))}" /></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;text-align:center;" headerValue="Desc"><apex:outputText value="{0,number,percent}"><apex:param value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Discount/100, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Discount/100, null))}" /></apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Preço Desconto"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Valor_cotado__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Valor_consumido__c, null))}"/></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Valor"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.Total_cotado__c >= 1000000,TEXT(FLOOR(oli.Total_cotado__c / 1000000)) & ".","") & IF(oli.Total_cotado__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_cotado__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_cotado__c)), 3) & "," & IF(MOD(oli.Total_cotado__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.Total_consumido__c >= 1000000,TEXT(FLOOR(oli.Total_consumido__c / 1000000)) & ".","") & IF(oli.Total_consumido__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_consumido__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_consumido__c)), 3) & "," & IF(MOD(oli.Total_consumido__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100, 99))), null))}"/></apex:column> </apex:pageBlockTable> <br/> <apex:panelGrid columns="2" style="float:right;"> <apex:outputText escape="false" value="<b>VALOR TOTAL:</b> "></apex:outputText><apex:outputText escape="false" value="R${!IF( Opportunity.Valor_cotado__c >= 1000000, TEXT(FLOOR(Opportunity.Valor_cotado__c / 1000000)) & ".", "") & IF( Opportunity.Valor_cotado__c >= 1000, RIGHT(TEXT(FLOOR(Opportunity.Valor_cotado__c / 1000)), 3) & ".", "") & RIGHT(TEXT(FLOOR(Opportunity.Valor_cotado__c)), 3) & "," & IF( MOD(Opportunity.Valor_cotado__c , 1) * 100 < 10, "0" & TEXT(ROUND(MOD(Opportunity.Valor_cotado__c , 1), 2) * 100), TEXT(MIN(ROUND(MOD(Opportunity.Valor_cotado__c , 1), 2) * 100, 99)) )}"/> <apex:outputText escape="false" value="<b>Prazo de pagamento:</b> {!Opportunity.Prazo__r.name}"/> </apex:panelGrid> </apex:form> <br/><br/> <apex:outputText escape="false" value="<b>Observação: </b>{!Opportunity.Coment_rios_da_Cota_o__c}" rendered="{!NOT(ISNULL(Opportunity.Coment_rios_da_Cota_o__c))}"/><br/> </apex:pageBlock> </apex:page>
- RaphaelBarreiros
- February 11, 2016
- Like
- 0
The value 'null' is not valid for operator '>'
I have the following code, but when I open this VF I just receive the error: The value 'null' is not valid for operator '>'
I really dont know what I'm missing, I think its related with pageBlockTable.
Thanks in advance.
I really dont know what I'm missing, I think its related with pageBlockTable.
Thanks in advance.
<apex:page StandardController="Opportunity" contenttype="application/pdf" renderAs="pdf"> <apex:stylesheet value="{!$Resource.landscape}"/> <apex:pageBlock > <apex:form > <apex:variable var="i" value="{!0}"/> <apex:pageBlockTable value="{!Opportunity.OpportunityLineItems}" rendered="{!OR(ISNULL(Opportunity.Desconto__c),Opportunity.Desconto__c=0)}" var="oli" cellpadding="4" style="font-size:14px" border="0"> <apex:column > <apex:variable var="i" value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, i+1, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, i+1, i))}"/> </apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Código"><apex:outputText >{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.productcode, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.productcode, null))}</apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Descrição">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.name, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.name, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Fabricante">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Fabricante__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Fabricante__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="ANVISA">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.ANVISA__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.ANVISA__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;text-align:center;" headerValue="Fornecedor">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;text-align:center" headerValue="Qtde"><apex:outputText value="{0,number, integer}"><apex:param value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Quantidade_cotada__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Quantidade_consumida__c, null))}"/></apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Preço"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), null))}" /></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Valor"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.Total_cotado__c >= 1000000,TEXT(FLOOR(oli.Total_cotado__c / 1000000)) & ".","") & IF(oli.Total_cotado__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_cotado__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_cotado__c)), 3) & "," & IF(MOD(oli.Total_cotado__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.Total_consumido__c >= 1000000,TEXT(FLOOR(oli.Total_consumido__c / 1000000)) & ".","") & IF(oli.Total_consumido__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_consumido__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_consumido__c)), 3) & "," & IF(MOD(oli.Total_consumido__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100, 99))), null))}"/></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Código"><apex:outputText >{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.productcode, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.productcode, null))}</apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Descrição">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.name, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.name, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Fabricante">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Fabricante__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Fabricante__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="ANVISA">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.ANVISA__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.ANVISA__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;text-align:center;" headerValue="Fornecedor">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;text-align:center;" headerValue="Qtde"><apex:outputText value="{0,number, integer}"><apex:param value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Quantidade_cotada__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Quantidade_consumida__c, null))}"/></apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Preço"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), null))}" /></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Valor"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.Total_cotado__c >= 1000000,TEXT(FLOOR(oli.Total_cotado__c / 1000000)) & ".","") & IF(oli.Total_cotado__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_cotado__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_cotado__c)), 3) & "," & IF(MOD(oli.Total_cotado__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.Total_consumido__c >= 1000000,TEXT(FLOOR(oli.Total_consumido__c / 1000000)) & ".","") & IF(oli.Total_consumido__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_consumido__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_consumido__c)), 3) & "," & IF(MOD(oli.Total_consumido__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100, 99))), null))}"/></apex:column> </apex:pageBlockTable> <!-- Se não tem desconto, é a lista relacionada de cima, se sim é o de baixo --> <apex:pageBlockTable value="{!Opportunity.OpportunityLineItems}" rendered="{!NOT(OR(ISNULL(Opportunity.Desconto__c),Opportunity.Desconto__c=0))}" var="oli" cellpadding="4" style="font-size:14px" border="0"> <apex:column > <apex:variable var="i" value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, i+1, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, i+1, i))}"/> </apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Código"><apex:outputText >{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.productcode, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.productcode, null))}</apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Descrição">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.name, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.name, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO','Fabricante','Lote')}">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Fabricante__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Fabricante__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="ANVISA">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.ANVISA__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.ANVISA__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;text-align:center;" headerValue="Fornecedor">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;text-align:center" headerValue="Qtde"><apex:outputText value="{0,number, integer}"><apex:param value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Quantidade_cotada__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Quantidade_consumida__c, null))}"/></apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Preço Lista"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), null))}" /></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;text-align:center;" headerValue="Desc"><apex:outputText value="{0,number,percent}"><apex:param value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Discount/100, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Discount/100, null))}" /></apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Preço Desconto"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Valor_cotado__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Valor_consumido__c, null))}"/></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 0, true, false)}" style="background:#edf9fc;" headerValue="Valor"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.Total_cotado__c >= 1000000,TEXT(FLOOR(oli.Total_cotado__c / 1000000)) & ".","") & IF(oli.Total_cotado__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_cotado__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_cotado__c)), 3) & "," & IF(MOD(oli.Total_cotado__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.Total_consumido__c >= 1000000,TEXT(FLOOR(oli.Total_consumido__c / 1000000)) & ".","") & IF(oli.Total_consumido__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_consumido__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_consumido__c)), 3) & "," & IF(MOD(oli.Total_consumido__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100, 99))), null))}"/></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Código"><apex:outputText >{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.productcode, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.productcode, null))}</apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Descrição">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.name, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.name, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO','Fabricante','Lote')}">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Fabricante__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Fabricante__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="ANVISA">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.ANVISA__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.ANVISA__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;text-align:center;" headerValue="Fornecedor">{!IF(Opportunity.pdfPre_Pos__c = 'COTAÇÃO' && oli.Quantidade_cotada__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.PricebookEntry.Product2.Representante_nacional__c, null))}</apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;text-align:center;" headerValue="Qtde"><apex:outputText value="{0,number, integer}"><apex:param value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Quantidade_cotada__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Quantidade_consumida__c, null))}"/></apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Preço Lista"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.UnitPrice >= 1000000,TEXT(FLOOR(oli.UnitPrice / 1000000)) & ".","") & IF(oli.UnitPrice >= 1000,RIGHT(TEXT(FLOOR(oli.UnitPrice / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.UnitPrice)), 3) & "," & IF(MOD(oli.UnitPrice , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.UnitPrice , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.UnitPrice , 1), 2) * 100, 99))), null))}" /></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;text-align:center;" headerValue="Desc"><apex:outputText value="{0,number,percent}"><apex:param value="{!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Discount/100, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Discount/100, null))}" /></apex:outputText></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Preço Desconto"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, oli.Valor_cotado__c, IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, oli.Valor_consumido__c, null))}"/></apex:column> <apex:column rendered="{!IF((mod(i,2)) == 1, true, false)}" style="background:#cdf9eb;" headerValue="Valor"><apex:outputText value="R${!IF(Opportunity.pdfPre_Pos__c="COTAÇÃO" && oli.Quantidade_cotada__c>0, IF(oli.Total_cotado__c >= 1000000,TEXT(FLOOR(oli.Total_cotado__c / 1000000)) & ".","") & IF(oli.Total_cotado__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_cotado__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_cotado__c)), 3) & "," & IF(MOD(oli.Total_cotado__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_cotado__c , 1), 2) * 100, 99))), IF(Opportunity.pdfPre_Pos__c = 'PÓS' && oli.Quantidade_consumida__c>0, IF(oli.Total_consumido__c >= 1000000,TEXT(FLOOR(oli.Total_consumido__c / 1000000)) & ".","") & IF(oli.Total_consumido__c >= 1000,RIGHT(TEXT(FLOOR(oli.Total_consumido__c / 1000)), 3) & ".","") & RIGHT(TEXT(FLOOR(oli.Total_consumido__c)), 3) & "," & IF(MOD(oli.Total_consumido__c , 1) * 100 < 10,"0" & TEXT(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100),TEXT(MIN(ROUND(MOD(oli.Total_consumido__c , 1), 2) * 100, 99))), null))}"/></apex:column> </apex:pageBlockTable> <br/> <apex:panelGrid columns="2" style="float:right;"> <apex:outputText escape="false" value="<b>VALOR TOTAL:</b> "></apex:outputText><apex:outputText escape="false" value="R${!IF( Opportunity.Valor_cotado__c >= 1000000, TEXT(FLOOR(Opportunity.Valor_cotado__c / 1000000)) & ".", "") & IF( Opportunity.Valor_cotado__c >= 1000, RIGHT(TEXT(FLOOR(Opportunity.Valor_cotado__c / 1000)), 3) & ".", "") & RIGHT(TEXT(FLOOR(Opportunity.Valor_cotado__c)), 3) & "," & IF( MOD(Opportunity.Valor_cotado__c , 1) * 100 < 10, "0" & TEXT(ROUND(MOD(Opportunity.Valor_cotado__c , 1), 2) * 100), TEXT(MIN(ROUND(MOD(Opportunity.Valor_cotado__c , 1), 2) * 100, 99)) )}"/> <apex:outputText escape="false" value="<b>Prazo de pagamento:</b> {!Opportunity.Prazo__r.name}"/> </apex:panelGrid> </apex:form> <br/><br/> <apex:outputText escape="false" value="<b>Observação: </b>{!Opportunity.Coment_rios_da_Cota_o__c}" rendered="{!NOT(ISNULL(Opportunity.Coment_rios_da_Cota_o__c))}"/><br/> </apex:pageBlock> </apex:page>
- RaphaelBarreiros
- February 11, 2016
- Like
- 0