When I update product by hand using this code:
$product =& $this->Application->recallObject('p', null, Array ('skip_autoload' => true));
$products = $application->Conn->Query($product->GetSelectSQL(), $product->IDField);
foreach ($products as $product_id => $product_data)
{ $product->LoadFromHash($product_data); $product->Update(); }then I always get notice about undefined field "File5". This happens because there is same method for creating file and image fields for category item, but different for saving them. Field "PrimaryFile" is created instead if "File5" at the end.