$DDI = 1; $CPIN = 0; $MPIN = 0; $Info = " "; $ResRef = 0; $ConfRef = 0; $ActDuration = 0; $AvailInd = 0; $rc = 0; $dbh->do('use BSRes2'); $sth = $dbh->prepare(' declare @DDI UDTDDI, @CPIN UDTPIN, @MPIN UDTPIN, @Information UDTComment, @ReservationRef int, @ConferenceRef int, @ActualDuration int, @AvailableInd UDTFlag select @DDI = ?, @CPIN = ?, @MPIN = ?, @Information = ?, @ReservationRef = ?, @ConferenceRef = ?, @ActualDuration = ?, @AvailableInd = ? execute p_ccs_MakeBooking @ClientAccount="xxxxxx", [...] @DDI=@DDI OUTPUT, @CPIN=@CPIN OUTPUT, @MPIN=@MPIN OUTPUT, @Information=@Information OUTPUT, @ReservationRef=@ReservationRef OUTPUT, @ConferenceRef=@ConferenceRef OUTPUT, @ActualDuration=@ActualDuration OUTPUT, @AvailableInd=@AvailableInd OUTPUT'); $sth->bind_param_inout(1, \$DDI, 32, DBI::SQL_VARCHAR); $sth->bind_param_inout(2, \$CPIN, 12, DBI::SQL_VARCHAR); $sth->bind_param_inout(3, \$MPIN, 12, DBI::SQL_VARCHAR); $sth->bind_param_inout(4, \$Info, 255, DBI::SQL_VARCHAR); $sth->bind_param_inout(5, \$ResRef, 10, DBI::SQL_INTEGER); $sth->bind_param_inout(6, \$ConfRef, 10, DBI::SQL_INTEGER); $sth->bind_param_inout(7, \$ActDuration, 10, DBI::SQL_INTEGER); $sth->bind_param_inout(8, \$AvailInd, 1, DBI::SQL_BIT); $sth->execute();