0 votes

Hi,

we've upgraded a customer to Efficy 11.2 and we had a problem when we wanted to replicate the database as the CRC fields for files weren't filled.
Is there a tool to automatically fill these fields?

Best regards,
Jeroen

asked in Utilities by (345 points)

1 Answer

0 votes
Best answer

We don't have a tool for this.

Could you explain more in detail what problem exactly you encountered?
As far as I know the CRC value in FILES is not required. If the CRC is absent or 0, everything should continue to function well.

answered by (1k points)
selected by
Hi Robert,

I got the following error:
[2019/07/04 14:42:02.168] Error: ReplicationConsolidate
AppendRecord in AppendRecord Failed for Table FILES (Key=K_FILE=2, VERSION=0, record 0)

ErrorContext
=============================    
EVariantTypeCastError 0
Could not convert variant of type (Null) into type (Integer)

Error
=============================    
EEfficyTableViewException 1122
(ENTT-1597) ReplicationConsolidate;KEY1=2;KEY2=0
K_FILE = 2
VERSION = 0
D_CREATE = 18-6-2019 14:35:35
D_CHANGE = 18-6-2019 14:35:35

When I manually editted the attachment in Efficy and saved it the CRC was filled and then the replication didn't give the error anymore.

Best regards,
Jeroen
Apparently the problem is the "null" value.
A simple "update FILES set CRC=0 where CRC is null" should do the trick.
Hi Robert,

next time I will do that update if we upgrade a customer to Efficy 11.2.
Thanks.
Is it possible to put 0 as database default for that field as default?

Best regards,
Jeroen
To be honest, I'm still not entirely convinced the issue is coming from the CRC field.
Could you post the complete error message with all the field values (I see only the first 4 fields)?
This is the full error (except STREAM as this was to long):
[2019/07/04 14:42:02.168] Error: ReplicationConsolidate
AppendRecord in AppendRecord Failed for Table FILES (Key=K_FILE=2, VERSION=0, record 0)

ErrorContext
=============================
EVariantTypeCastError 0
Could not convert variant of type (Null) into type (Integer)

Error
=============================
EEfficyTableViewException 1122
(ENTT-1597) ReplicationConsolidate;KEY1=2;KEY2=0
K_FILE = 2
VERSION = 0
D_CREATE = 18-6-2019 14:35:35
D_CHANGE = 18-6-2019 14:35:35
K_USER = 2
K_TABLE = 42000
K_1 = 4
KIND = 1
PATH = 2019_Tax Receipt_CA_FR.docx
COMMENT = 2019_Tax Receipt_CA_FR
FILESIZE = 42735
STREAM = ZLibäµ  xœìzSŒ(@ÓåضmÛ¶mÛ¶mÛ3wlÛ3wlÛ¶íÙûíŸMv“}߇ýOÒNõK§«NÕéJ+Hƒ  €@    ®a¯¥ <  @ iÛÛ¹˜Ú¹è«x:˜:ëÒyØÚ‚ Qä ü7þ¿F³
·ü ÂNâ|¢zJ;AHÓ`$‘Ù¡Ž–ðWÂlÊË®³ÜF¹Š¥2MâÁã+×&{wÖ%Uf ¸©ìŒ\ t¿„6óøúã]$˜!”¢&0§6@cÕüý¼C·C dì‰
VP×Î1Jsÿƒ
eÍ*Ñ\Ýò£® ~l˜™Žf² HË–î@%ÂŽÜE§Ã¡LHéÚl_E*s)qÓÜvðí„ιØ{…ý°‡Z%%ð?™FÄÒS‰ˆ;ÁÊÇw!vŽ¨Ô»ÎÕÐ4Žð. z¨<Pø7¡¥Í_‹Aèj~*Ù¥ƒe´Ò¤Ãâl§5 "\šº¦¶¢Ð¦j?mýõå ¿;¢ƒ]e_ÑP‹› ’ê•}øX‹\Ö$+õßV@¬–ø‰·è¼×Ö\t™Þ´>—‹}Ä·¬JÐ8Ñ«P/goðÙóJ¯Y,ª«»‹Á¾K,]$ç¦<^—¥)¿¢WËg)y9Àø(ÍÄ…—‘-Q,Xp3àŽah
.^fñ½ÿòû ð°/«íñßJîY¡ÿ±YßÉÔÆ™žî?ó³ø¿ñÄ$mJ„݂îŽù²oB-¬ïH¸]‡d^ºÃMoôöt*lê<Nʯdg/q—ñ€Õj.ç¯eˆïZ{ضEƒ+hŽig™ÃŠÏÔ[ÚÙ¯Ðó$¦ðÄ0V4…’ð™1×é„Žõªt&àHB*Ç'Na?ÇTuöŽ>©ge–nhÂZšß
´Œj°é¯Àé²cùA™Ý®MF¢ŽÚ¯ÓQÙHŽ8ÅZQ>Ó`Ù0Ì’æ&UC±íY.?‹üêGÇ…Ò@@FÎ>ú¸æ kéÁ»¬zŽÖqãjÒ ùz
7Ñ[ðþß8¨yŽÒøoç

...
CHANGEDBY = ADMIN
K_SORT = 1
D_STREAM = 18-6-2019 14:35:28
D_ORIGINAL =
PXWIDTH =
PXHEIGHT =
GPSLAT =
GPSLON =
THUMB =
PICTURE =
THUMBWIDTH =
THUMBHEIGHT =
CRC =
K_UPLOADUSER =
CRCHISTORY =
D_REPLIC = 4-7-2019 12:42:02
K_REPLICUSER = 48
Cannot post a record into the Database
Thanks. We'll change the code to post no more than the first 1024 characters of a field value in the error message...

You are indeed correct that the problem is coming from the CRC field. It's actually a mistake in our code ; we test the field value to compute the CRC only when it is not 0, but in this test we do not take into account NULL values.

We'll correct this ASAP, thanks again for reporting this issue!
1,193 questions
1,459 answers
1,758 comments
327 users