Procedural mesh not saving all of its sections to static mesh

Step4 :in your xx.cpp some different

UStaticMesh* URuntimeMeshImportExportLibrary::SaveProceduralMeshToStaticMesh(UProceduralMeshComponent* ProcMesh, FString AssetName, FString PathName)
{

//FString AssetName = FString(TEXT(“SM_”)) + LevelName + FString(TEXT("_") + ActorName);
//FString PathName = FString(TEXT("/Game/RobotMeshes/"));
FString PackageName = PathName + AssetName;

			FStaticMeshSourceModel& SrcModel = StaticMesh->AddSourceModel();
			SrcModel.BuildSettings.bRecomputeNormals = false;
			SrcModel.BuildSettings.bRecomputeTangents = false;
			SrcModel.BuildSettings.bRemoveDegenerates = false;
			SrcModel.BuildSettings.bUseHighPrecisionTangentBasis = false;
			SrcModel.BuildSettings.bUseFullPrecisionUVs = false;
			SrcModel.BuildSettings.bGenerateLightmapUVs = true;
			SrcModel.BuildSettings.SrcLightmapIndex = 0;
			SrcModel.BuildSettings.DstLightmapIndex = 1;
			SrcModel.SaveRawMesh(RawMesh);

			return StaticMesh;
		}
	}
}

return nullptr;

}

By the way: I test in 4.23.1 ,It work!