You might want to explain exactly what you mean by :"i dont want to use the proc import because sometimes the proc runs wrong"
One of the issues with DBF if that the same extension is used for multiple actual file types. Plus additional headaches if there is a MEMO field such as
PROC IMPORT OUT=WORK.TEST
DATAFILE='orders.dbf'
DBMS=DBFMEMO REPLACE;
RUN;
Note: Any DBF file that you plan to import to a SAS data set should be in a tabular format. All items in a given column should represent the same type of data. If the DBF file contains inconsistent data, such as a row of underscores, hyphens, or blanks, delete these rows before converting the file. It is recommended that you make a backup copy of your DBF table before you make these modifications.
You might be able to use PROC DBF
Example:
proc dbf db2='/sasdata/BSEG/HOLDING/riscos_ctba/solucoes/dataset/dev/BENEFPAGOS.DBF'
out=work.benefpagos;
run;
if your file is DB3 or DB4 then use either of those in place of DB2= in the code above.